@@ -21204,6 +21204,164 @@ components:
21204
21204
type:
21205
21205
$ref: '#/components/schemas/MonitorDowntimeMatchResourceType'
21206
21206
type: object
21207
+ MonitorNotificationRuleAttributes:
21208
+ additionalProperties: false
21209
+ description: Attributes of the monitor notification rule.
21210
+ properties:
21211
+ filter:
21212
+ $ref: '#/components/schemas/MonitorNotificationRuleFilter'
21213
+ name:
21214
+ $ref: '#/components/schemas/MonitorNotificationRuleName'
21215
+ recipients:
21216
+ $ref: '#/components/schemas/MonitorNotificationRuleRecipients'
21217
+ required:
21218
+ - name
21219
+ - recipients
21220
+ type: object
21221
+ MonitorNotificationRuleCreateRequest:
21222
+ description: Request for creating a monitor notification rule.
21223
+ properties:
21224
+ data:
21225
+ $ref: '#/components/schemas/MonitorNotificationRuleCreateRequestData'
21226
+ required:
21227
+ - data
21228
+ type: object
21229
+ MonitorNotificationRuleCreateRequestData:
21230
+ description: Object to create a monitor notification rule.
21231
+ properties:
21232
+ attributes:
21233
+ $ref: '#/components/schemas/MonitorNotificationRuleAttributes'
21234
+ type:
21235
+ $ref: '#/components/schemas/MonitorNotificationRuleResourceType'
21236
+ required:
21237
+ - attributes
21238
+ type: object
21239
+ MonitorNotificationRuleData:
21240
+ description: Monitor notification rule data.
21241
+ properties:
21242
+ attributes:
21243
+ $ref: '#/components/schemas/MonitorNotificationRuleResponseAttributes'
21244
+ id:
21245
+ $ref: '#/components/schemas/MonitorNotificationRuleId'
21246
+ type:
21247
+ $ref: '#/components/schemas/MonitorNotificationRuleResourceType'
21248
+ type: object
21249
+ MonitorNotificationRuleFilter:
21250
+ description: Filter used to associate the notification rule with monitors.
21251
+ oneOf:
21252
+ - $ref: '#/components/schemas/MonitorNotificationRuleFilterTags'
21253
+ MonitorNotificationRuleFilterTags:
21254
+ additionalProperties: false
21255
+ description: Filter monitors by tags. Monitors must match all tags.
21256
+ properties:
21257
+ tags:
21258
+ description: The `MonitorNotificationRuleFilterTags` `tags`.
21259
+ example:
21260
+ - team:product
21261
+ - host:abc
21262
+ items:
21263
+ maxLength: 255
21264
+ type: string
21265
+ maxItems: 20
21266
+ minItems: 1
21267
+ type: array
21268
+ uniqueItems: true
21269
+ required:
21270
+ - tags
21271
+ type: object
21272
+ MonitorNotificationRuleId:
21273
+ description: The ID of the monitor notification rule.
21274
+ example: 00000000-0000-1234-0000-000000000000
21275
+ type: string
21276
+ MonitorNotificationRuleListResponse:
21277
+ description: Response for retrieving all monitor notification rules.
21278
+ properties:
21279
+ data:
21280
+ description: A list of monitor notification rules.
21281
+ items:
21282
+ $ref: '#/components/schemas/MonitorNotificationRuleData'
21283
+ type: array
21284
+ type: object
21285
+ MonitorNotificationRuleName:
21286
+ description: The name of the monitor notification rule.
21287
+ example: A notification rule name
21288
+ maxLength: 1000
21289
+ minLength: 1
21290
+ type: string
21291
+ MonitorNotificationRuleRecipients:
21292
+ description: A list of recipients to notify. Uses the same format as the monitor
21293
+ `message` field. Must not start with an '@'.
21294
+ example:
21295
+ - slack-test-channel
21296
+ - jira-test
21297
+ items:
21298
+ description: individual recipient.
21299
+ maxLength: 255
21300
+ type: string
21301
+ maxItems: 20
21302
+ minItems: 1
21303
+ type: array
21304
+ uniqueItems: true
21305
+ MonitorNotificationRuleResourceType:
21306
+ default: monitor-notification-rule
21307
+ description: Monitor notification rule resource type.
21308
+ enum:
21309
+ - monitor-notification-rule
21310
+ example: monitor-notification-rule
21311
+ type: string
21312
+ x-enum-varnames:
21313
+ - MONITOR_NOTIFICATION_RULE
21314
+ MonitorNotificationRuleResponse:
21315
+ description: A monitor notification rule.
21316
+ properties:
21317
+ data:
21318
+ $ref: '#/components/schemas/MonitorNotificationRuleData'
21319
+ type: object
21320
+ MonitorNotificationRuleResponseAttributes:
21321
+ description: Attributes of the monitor notification rule.
21322
+ properties:
21323
+ created_at:
21324
+ description: Creation time of the monitor notification rule.
21325
+ example: 2020-01-02 03:04:00+00:00
21326
+ format: date-time
21327
+ type: string
21328
+ creator_uuid:
21329
+ description: ID of the user who created the monitor notification rule.
21330
+ example: 00000000-0000-1234-0000-000000000000
21331
+ type: string
21332
+ filter:
21333
+ $ref: '#/components/schemas/MonitorNotificationRuleFilter'
21334
+ modified_at:
21335
+ description: Time the monitor notification rule was last modified.
21336
+ example: 2020-01-02 03:04:00+00:00
21337
+ format: date-time
21338
+ type: string
21339
+ name:
21340
+ $ref: '#/components/schemas/MonitorNotificationRuleName'
21341
+ recipients:
21342
+ $ref: '#/components/schemas/MonitorNotificationRuleRecipients'
21343
+ type: object
21344
+ MonitorNotificationRuleUpdateRequest:
21345
+ description: Request for updating a monitor notification rule.
21346
+ properties:
21347
+ data:
21348
+ $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequestData'
21349
+ required:
21350
+ - data
21351
+ type: object
21352
+ MonitorNotificationRuleUpdateRequestData:
21353
+ description: Object to update a monitor notification rule.
21354
+ properties:
21355
+ attributes:
21356
+ $ref: '#/components/schemas/MonitorNotificationRuleAttributes'
21357
+ id:
21358
+ $ref: '#/components/schemas/MonitorNotificationRuleId'
21359
+ type:
21360
+ $ref: '#/components/schemas/MonitorNotificationRuleResourceType'
21361
+ required:
21362
+ - id
21363
+ - attributes
21364
+ type: object
21207
21365
MonitorTrigger:
21208
21366
description: Trigger a workflow from a Monitor. For automatic triggering a handle
21209
21367
must be configured and the workflow must be published.
@@ -34079,6 +34237,7 @@ components:
34079
34237
incident_settings_write: Configure Incident Settings.
34080
34238
incident_write: Create, view, and manage incidents in Datadog.
34081
34239
metrics_read: View custom metrics.
34240
+ monitor_config_policy_write: Edit and delete monitor configuration.
34082
34241
monitors_downtime: Set downtimes to suppress alerts from any monitor in
34083
34242
an organization. Mute and unmute monitors. The ability to write monitors
34084
34243
is not required to set downtimes.
@@ -43994,6 +44153,170 @@ paths:
43994
44153
x-permission:
43995
44154
operator: OPEN
43996
44155
permissions: []
44156
+ /api/v2/monitor/notification_rule:
44157
+ get:
44158
+ description: Returns a list of all monitor notification rules.
44159
+ operationId: GetMonitorNotificationRules
44160
+ responses:
44161
+ '200':
44162
+ content:
44163
+ application/json:
44164
+ schema:
44165
+ $ref: '#/components/schemas/MonitorNotificationRuleListResponse'
44166
+ description: OK
44167
+ '429':
44168
+ $ref: '#/components/responses/TooManyRequestsResponse'
44169
+ security:
44170
+ - apiKeyAuth: []
44171
+ appKeyAuth: []
44172
+ - AuthZ:
44173
+ - monitors_read
44174
+ summary: Get all monitor notification rules
44175
+ tags:
44176
+ - Monitor Notification Rules
44177
+ x-permission:
44178
+ operator: OR
44179
+ permissions:
44180
+ - monitors_read
44181
+ post:
44182
+ description: Creates a monitor notification rule.
44183
+ operationId: CreateMonitorNotificationRule
44184
+ requestBody:
44185
+ content:
44186
+ application/json:
44187
+ schema:
44188
+ $ref: '#/components/schemas/MonitorNotificationRuleCreateRequest'
44189
+ description: Request body to create a monitor notification rule.
44190
+ required: true
44191
+ responses:
44192
+ '200':
44193
+ content:
44194
+ application/json:
44195
+ schema:
44196
+ $ref: '#/components/schemas/MonitorNotificationRuleResponse'
44197
+ description: OK
44198
+ '400':
44199
+ description: Bad Request
44200
+ '429':
44201
+ $ref: '#/components/responses/TooManyRequestsResponse'
44202
+ security:
44203
+ - apiKeyAuth: []
44204
+ appKeyAuth: []
44205
+ - AuthZ:
44206
+ - monitor_config_policy_write
44207
+ summary: Create a monitor notification rule
44208
+ tags:
44209
+ - Monitor Notification Rules
44210
+ x-permission:
44211
+ operator: OR
44212
+ permissions:
44213
+ - monitor_config_policy_write
44214
+ /api/v2/monitor/notification_rule/{rule_id}:
44215
+ delete:
44216
+ description: Deletes a monitor notification rule by `rule_id`.
44217
+ operationId: DeleteMonitorNotificationRule
44218
+ parameters:
44219
+ - description: ID of the monitor notification rule to delete.
44220
+ in: path
44221
+ name: rule_id
44222
+ required: true
44223
+ schema:
44224
+ type: string
44225
+ responses:
44226
+ '204':
44227
+ description: OK
44228
+ '404':
44229
+ description: Not Found
44230
+ '429':
44231
+ $ref: '#/components/responses/TooManyRequestsResponse'
44232
+ security:
44233
+ - apiKeyAuth: []
44234
+ appKeyAuth: []
44235
+ - AuthZ:
44236
+ - monitor_config_policy_write
44237
+ summary: Delete a monitor notification rule
44238
+ tags:
44239
+ - Monitor Notification Rules
44240
+ x-permission:
44241
+ operator: OR
44242
+ permissions:
44243
+ - monitor_config_policy_write
44244
+ get:
44245
+ description: Returns a monitor notification rule by `rule_id`.
44246
+ operationId: GetMonitorNotificationRule
44247
+ parameters:
44248
+ - description: ID of the monitor notification rule to fetch.
44249
+ in: path
44250
+ name: rule_id
44251
+ required: true
44252
+ schema:
44253
+ type: string
44254
+ responses:
44255
+ '200':
44256
+ content:
44257
+ application/json:
44258
+ schema:
44259
+ $ref: '#/components/schemas/MonitorNotificationRuleResponse'
44260
+ description: OK
44261
+ '404':
44262
+ description: Not Found
44263
+ '429':
44264
+ $ref: '#/components/responses/TooManyRequestsResponse'
44265
+ security:
44266
+ - apiKeyAuth: []
44267
+ appKeyAuth: []
44268
+ - AuthZ:
44269
+ - monitors_read
44270
+ summary: Get a monitor notification rule
44271
+ tags:
44272
+ - Monitor Notification Rules
44273
+ x-permission:
44274
+ operator: OR
44275
+ permissions:
44276
+ - monitors_read
44277
+ patch:
44278
+ description: Updates a monitor notification rule by `rule_id`.
44279
+ operationId: UpdateMonitorNotificationRule
44280
+ parameters:
44281
+ - description: ID of the monitor notification rule to update.
44282
+ in: path
44283
+ name: rule_id
44284
+ required: true
44285
+ schema:
44286
+ type: string
44287
+ requestBody:
44288
+ content:
44289
+ application/json:
44290
+ schema:
44291
+ $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequest'
44292
+ description: Request body to update the monitor notification rule.
44293
+ required: true
44294
+ responses:
44295
+ '200':
44296
+ content:
44297
+ application/json:
44298
+ schema:
44299
+ $ref: '#/components/schemas/MonitorNotificationRuleResponse'
44300
+ description: OK
44301
+ '400':
44302
+ description: Bad Request
44303
+ '404':
44304
+ description: Not Found
44305
+ '429':
44306
+ $ref: '#/components/responses/TooManyRequestsResponse'
44307
+ security:
44308
+ - apiKeyAuth: []
44309
+ appKeyAuth: []
44310
+ - AuthZ:
44311
+ - monitor_config_policy_write
44312
+ summary: Update a monitor notification rule
44313
+ tags:
44314
+ - Monitor Notification Rules
44315
+ x-codegen-request-body-name: body
44316
+ x-permission:
44317
+ operator: OR
44318
+ permissions:
44319
+ - monitor_config_policy_write
43997
44320
/api/v2/monitor/policy:
43998
44321
get:
43999
44322
description: Get all monitor configuration policies.
@@ -53989,6 +54312,11 @@ tags:
53989
54312
see the integration page.
53990
54313
url: https://docs.datadoghq.com/integrations/microsoft_teams/
53991
54314
name: Microsoft Teams Integration
54315
+ - description: 'Monitor Notification Rules allow users to define recipient routing
54316
+ behavior for monitor alerts
54317
+
54318
+ based on monitor metadata such as tags.'
54319
+ name: Monitor Notification Rules
53992
54320
- description: '[Monitors](https://docs.datadoghq.com/monitors) allow you to watch
53993
54321
a metric or check that you care about and
53994
54322
0 commit comments