naftiko: 1.0.0-alpha2 info: label: Datadog API — Rules description: 'Datadog API — Rules. 54 operations. Lead operation: Datadog Get All Monitor Notification Rules. Self-contained Naftiko capability covering one Datadog business surface.' tags: - Datadog - Rules created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DATADOG_API_KEY: DATADOG_API_KEY capability: consumes: - type: http namespace: datadog-rules baseUri: https://{subdomain}.{site} description: Datadog API — Rules business capability. Self-contained, no shared references. resources: - name: api-v2-monitor-notification_rule path: /api/v2/monitor/notification_rule operations: - name: getmonitornotificationrules method: GET description: Datadog Get All Monitor Notification Rules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: include in: query type: string description: Comma-separated list of resource paths for related resources to include in the response. Supported resource - name: createmonitornotificationrule method: POST description: Datadog Create a Monitor Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-monitor-notification_rule-rule_id path: /api/v2/monitor/notification_rule/{rule_id} operations: - name: deletemonitornotificationrule method: DELETE description: Datadog Delete a Monitor Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: rule_id in: path type: string description: ID of the monitor notification rule to delete. required: true - name: getmonitornotificationrule method: GET description: Datadog Get a Monitor Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: rule_id in: path type: string description: ID of the monitor notification rule to fetch. required: true - name: include in: query type: string description: Comma-separated list of resource paths for related resources to include in the response. Supported resource - name: updatemonitornotificationrule method: PATCH description: Datadog Update a Monitor Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: rule_id in: path type: string description: ID of the monitor notification rule to update. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-on-call-teams-team_id-routing-rules path: /api/v2/on-call/teams/{team_id}/routing-rules operations: - name: getoncallteamroutingrules method: GET description: Datadog Get On-call Team Routing Rules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: team_id in: path type: string description: The team ID required: true - name: include in: query type: string description: 'Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`.' - name: setoncallteamroutingrules method: PUT description: Datadog Set On-call Team Routing Rules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: team_id in: path type: string description: The team ID required: true - name: include in: query type: string description: 'Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`.' - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-remote_config-products-asm-waf-custom_rules path: /api/v2/remote_config/products/asm/waf/custom_rules operations: - name: listapplicationsecuritywafcustomrules method: GET description: Datadog List All Waf Custom Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createapplicationsecuritywafcustomrule method: POST description: Datadog Create a Waf Custom Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-remote_config-products-asm-waf-custom_rules-custom_rule_id path: /api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id} operations: - name: deleteapplicationsecuritywafcustomrule method: DELETE description: Datadog Delete a Waf Custom Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getapplicationsecuritywafcustomrule method: GET description: Datadog Get a Waf Custom Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateapplicationsecuritywafcustomrule method: PUT description: Datadog Update a Waf Custom Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-remote_config-products-cws-agent_rules path: /api/v2/remote_config/products/cws/agent_rules operations: - name: listcsmthreatsagentrules method: GET description: Datadog Get All Workload Protection Agent Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createcsmthreatsagentrule method: POST description: Datadog Create a Workload Protection Agent Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-remote_config-products-cws-agent_rules-agent_rule_id path: /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id} operations: - name: deletecsmthreatsagentrule method: DELETE description: Datadog Delete a Workload Protection Agent Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getcsmthreatsagentrule method: GET description: Datadog Get a Workload Protection Agent Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatecsmthreatsagentrule method: PATCH description: Datadog Update a Workload Protection Agent Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-scorecard-outcomes path: /api/v2/scorecard/outcomes operations: - name: listscorecardoutcomes method: GET description: Datadog List All Rule Outcomes outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: include in: query type: string description: Include related rule details in the response. - name: fields[outcome] in: query type: string description: Return only specified values in the outcome attributes. - name: fields[rule] in: query type: string description: Return only specified values in the included rule details. - name: filter[outcome][service_name] in: query type: string description: Filter the outcomes on a specific service name. - name: filter[outcome][state] in: query type: string description: Filter the outcomes by a specific state. - name: filter[rule][enabled] in: query type: boolean description: Filter outcomes on whether a rule is enabled/disabled. - name: filter[rule][id] in: query type: string description: Filter outcomes based on rule ID. - name: filter[rule][name] in: query type: string description: Filter outcomes based on rule name. - name: api-v2-scorecard-rules path: /api/v2/scorecard/rules operations: - name: listscorecardrules method: GET description: Datadog List All Rules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: include in: query type: string description: Include related scorecard details in the response. - name: filter[rule][id] in: query type: string description: Filter the rules on a rule ID. - name: filter[rule][enabled] in: query type: boolean description: Filter for enabled rules only. - name: filter[rule][custom] in: query type: boolean description: Filter for custom rules only. - name: filter[rule][name] in: query type: string description: Filter rules on the rule name. - name: filter[rule][description] in: query type: string description: Filter rules on the rule description. - name: fields[rule] in: query type: string description: Return only specific fields in the response for rule attributes. - name: fields[scorecard] in: query type: string description: Return only specific fields in the included response for scorecard attributes. - name: createscorecardrule method: POST description: Datadog Create a New Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-scorecard-rules-rule_id path: /api/v2/scorecard/rules/{rule_id} operations: - name: deletescorecardrule method: DELETE description: Datadog Delete a Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatescorecardrule method: PUT description: Datadog Update an Existing Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security-signals-notification_rules path: /api/v2/security/signals/notification_rules operations: - name: getsignalnotificationrules method: GET description: Datadog Get the List of Signal-based Notification Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsignalnotificationrule method: POST description: Datadog Create a New Signal-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security-signals-notification_rules-id path: /api/v2/security/signals/notification_rules/{id} operations: - name: deletesignalnotificationrule method: DELETE description: Datadog Delete a Signal-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: getsignalnotificationrule method: GET description: Datadog Get Details of a Signal-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: patchsignalnotificationrule method: PATCH description: Datadog Patch a Signal-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security-vulnerabilities-notification_rules path: /api/v2/security/vulnerabilities/notification_rules operations: - name: getvulnerabilitynotificationrules method: GET description: Datadog Get the List of Vulnerability Notification Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createvulnerabilitynotificationrule method: POST description: Datadog Create a New Vulnerability-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security-vulnerabilities-notification_rules-id path: /api/v2/security/vulnerabilities/notification_rules/{id} operations: - name: deletevulnerabilitynotificationrule method: DELETE description: Datadog Delete a Vulnerability-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: getvulnerabilitynotificationrule method: GET description: Datadog Get Details of a Vulnerability Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: patchvulnerabilitynotificationrule method: PATCH description: Datadog Patch a Vulnerability-based Notification Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: ID of the notification rule. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-cloud_workload_security-agent_rules path: /api/v2/security_monitoring/cloud_workload_security/agent_rules operations: - name: listcloudworkloadsecurityagentrules method: GET description: Datadog Get All Workload Protection Agent Rules (us1-fed) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createcloudworkloadsecurityagentrule method: POST description: Datadog Create a Workload Protection Agent Rule (us1-fed) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-cloud_workload_security-agent_rules-agent_rule_id path: /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id} operations: - name: deletecloudworkloadsecurityagentrule method: DELETE description: Datadog Delete a Workload Protection Agent Rule (us1-fed) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getcloudworkloadsecurityagentrule method: GET description: Datadog Get a Workload Protection Agent Rule (us1-fed) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatecloudworkloadsecurityagentrule method: PATCH description: Datadog Update a Workload Protection Agent Rule (us1-fed) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-configuration-suppressions path: /api/v2/security_monitoring/configuration/suppressions operations: - name: listsecuritymonitoringsuppressions method: GET description: Datadog Get All Suppression Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsecuritymonitoringsuppression method: POST description: Datadog Create a Suppression Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-configuration-suppressions-suppression_id path: /api/v2/security_monitoring/configuration/suppressions/{suppression_id} operations: - name: deletesecuritymonitoringsuppression method: DELETE description: Datadog Delete a Suppression Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getsecuritymonitoringsuppression method: GET description: Datadog Get a Suppression Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatesecuritymonitoringsuppression method: PATCH description: Datadog Update a Suppression Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules path: /api/v2/security_monitoring/rules operations: - name: listsecuritymonitoringrules method: GET description: Datadog List Rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsecuritymonitoringrule method: POST description: Datadog Create a Detection Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules-convert path: /api/v2/security_monitoring/rules/convert operations: - name: convertsecuritymonitoringrulefromjsontoterraform method: POST description: Datadog Convert a Rule from Json to Terraform outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules-test path: /api/v2/security_monitoring/rules/test operations: - name: testsecuritymonitoringrule method: POST description: Datadog Test a Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules-validation path: /api/v2/security_monitoring/rules/validation operations: - name: validatesecuritymonitoringrule method: POST description: Datadog Validate a Detection Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules-rule_id path: /api/v2/security_monitoring/rules/{rule_id} operations: - name: deletesecuritymonitoringrule method: DELETE description: Datadog Delete an Existing Rule outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatesecuritymonitoringrule method: PUT description: Datadog Update an Existing Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-security_monitoring-rules-rule_id-convert path: /api/v2/security_monitoring/rules/{rule_id}/convert operations: - name: convertexistingsecuritymonitoringrule method: GET description: Datadog Convert an Existing Rule from Json to Terraform outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v2-security_monitoring-rules-rule_id-test path: /api/v2/security_monitoring/rules/{rule_id}/test operations: - name: testexistingsecuritymonitoringrule method: POST description: Datadog Test an Existing Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-sensitive-data-scanner-config-rules path: /api/v2/sensitive-data-scanner/config/rules operations: - name: createscanningrule method: POST description: Datadog Create Scanning Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-sensitive-data-scanner-config-rules-rule_id path: /api/v2/sensitive-data-scanner/config/rules/{rule_id} operations: - name: deletescanningrule method: DELETE description: Datadog Delete Scanning Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: updatescanningrule method: PATCH description: Datadog Update Scanning Rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.DATADOG_API_KEY}}' exposes: - type: rest namespace: datadog-rules-rest port: 8080 description: REST adapter for Datadog API — Rules. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v2/monitor/notification-rule name: api-v2-monitor-notification-rule description: REST surface for api-v2-monitor-notification_rule. operations: - method: GET name: getmonitornotificationrules description: Datadog Get All Monitor Notification Rules call: datadog-rules.getmonitornotificationrules with: include: rest.include outputParameters: - type: object mapping: $. - method: POST name: createmonitornotificationrule description: Datadog Create a Monitor Notification Rule call: datadog-rules.createmonitornotificationrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/monitor/notification-rule/{rule-id} name: api-v2-monitor-notification-rule-rule-id description: REST surface for api-v2-monitor-notification_rule-rule_id. operations: - method: DELETE name: deletemonitornotificationrule description: Datadog Delete a Monitor Notification Rule call: datadog-rules.deletemonitornotificationrule with: rule_id: rest.rule_id outputParameters: - type: object mapping: $. - method: GET name: getmonitornotificationrule description: Datadog Get a Monitor Notification Rule call: datadog-rules.getmonitornotificationrule with: rule_id: rest.rule_id include: rest.include outputParameters: - type: object mapping: $. - method: PATCH name: updatemonitornotificationrule description: Datadog Update a Monitor Notification Rule call: datadog-rules.updatemonitornotificationrule with: rule_id: rest.rule_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/on-call/teams/{team-id}/routing-rules name: api-v2-on-call-teams-team-id-routing-rules description: REST surface for api-v2-on-call-teams-team_id-routing-rules. operations: - method: GET name: getoncallteamroutingrules description: Datadog Get On-call Team Routing Rules call: datadog-rules.getoncallteamroutingrules with: team_id: rest.team_id include: rest.include outputParameters: - type: object mapping: $. - method: PUT name: setoncallteamroutingrules description: Datadog Set On-call Team Routing Rules call: datadog-rules.setoncallteamroutingrules with: team_id: rest.team_id include: rest.include body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/remote-config/products/asm/waf/custom-rules name: api-v2-remote-config-products-asm-waf-custom-rules description: REST surface for api-v2-remote_config-products-asm-waf-custom_rules. operations: - method: GET name: listapplicationsecuritywafcustomrules description: Datadog List All Waf Custom Rules call: datadog-rules.listapplicationsecuritywafcustomrules outputParameters: - type: object mapping: $. - method: POST name: createapplicationsecuritywafcustomrule description: Datadog Create a Waf Custom Rule call: datadog-rules.createapplicationsecuritywafcustomrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/remote-config/products/asm/waf/custom-rules/{custom-rule-id} name: api-v2-remote-config-products-asm-waf-custom-rules-custom-rule-id description: REST surface for api-v2-remote_config-products-asm-waf-custom_rules-custom_rule_id. operations: - method: DELETE name: deleteapplicationsecuritywafcustomrule description: Datadog Delete a Waf Custom Rule call: datadog-rules.deleteapplicationsecuritywafcustomrule outputParameters: - type: object mapping: $. - method: GET name: getapplicationsecuritywafcustomrule description: Datadog Get a Waf Custom Rule call: datadog-rules.getapplicationsecuritywafcustomrule outputParameters: - type: object mapping: $. - method: PUT name: updateapplicationsecuritywafcustomrule description: Datadog Update a Waf Custom Rule call: datadog-rules.updateapplicationsecuritywafcustomrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/remote-config/products/cws/agent-rules name: api-v2-remote-config-products-cws-agent-rules description: REST surface for api-v2-remote_config-products-cws-agent_rules. operations: - method: GET name: listcsmthreatsagentrules description: Datadog Get All Workload Protection Agent Rules call: datadog-rules.listcsmthreatsagentrules outputParameters: - type: object mapping: $. - method: POST name: createcsmthreatsagentrule description: Datadog Create a Workload Protection Agent Rule call: datadog-rules.createcsmthreatsagentrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/remote-config/products/cws/agent-rules/{agent-rule-id} name: api-v2-remote-config-products-cws-agent-rules-agent-rule-id description: REST surface for api-v2-remote_config-products-cws-agent_rules-agent_rule_id. operations: - method: DELETE name: deletecsmthreatsagentrule description: Datadog Delete a Workload Protection Agent Rule call: datadog-rules.deletecsmthreatsagentrule outputParameters: - type: object mapping: $. - method: GET name: getcsmthreatsagentrule description: Datadog Get a Workload Protection Agent Rule call: datadog-rules.getcsmthreatsagentrule outputParameters: - type: object mapping: $. - method: PATCH name: updatecsmthreatsagentrule description: Datadog Update a Workload Protection Agent Rule call: datadog-rules.updatecsmthreatsagentrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/scorecard/outcomes name: api-v2-scorecard-outcomes description: REST surface for api-v2-scorecard-outcomes. operations: - method: GET name: listscorecardoutcomes description: Datadog List All Rule Outcomes call: datadog-rules.listscorecardoutcomes with: include: rest.include fields[outcome]: rest.fields[outcome] fields[rule]: rest.fields[rule] filter[outcome][service_name]: rest.filter[outcome][service_name] filter[outcome][state]: rest.filter[outcome][state] filter[rule][enabled]: rest.filter[rule][enabled] filter[rule][id]: rest.filter[rule][id] filter[rule][name]: rest.filter[rule][name] outputParameters: - type: object mapping: $. - path: /v1/api/v2/scorecard/rules name: api-v2-scorecard-rules description: REST surface for api-v2-scorecard-rules. operations: - method: GET name: listscorecardrules description: Datadog List All Rules call: datadog-rules.listscorecardrules with: include: rest.include filter[rule][id]: rest.filter[rule][id] filter[rule][enabled]: rest.filter[rule][enabled] filter[rule][custom]: rest.filter[rule][custom] filter[rule][name]: rest.filter[rule][name] filter[rule][description]: rest.filter[rule][description] fields[rule]: rest.fields[rule] fields[scorecard]: rest.fields[scorecard] outputParameters: - type: object mapping: $. - method: POST name: createscorecardrule description: Datadog Create a New Rule call: datadog-rules.createscorecardrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/scorecard/rules/{rule-id} name: api-v2-scorecard-rules-rule-id description: REST surface for api-v2-scorecard-rules-rule_id. operations: - method: DELETE name: deletescorecardrule description: Datadog Delete a Rule call: datadog-rules.deletescorecardrule outputParameters: - type: object mapping: $. - method: PUT name: updatescorecardrule description: Datadog Update an Existing Rule call: datadog-rules.updatescorecardrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security/signals/notification-rules name: api-v2-security-signals-notification-rules description: REST surface for api-v2-security-signals-notification_rules. operations: - method: GET name: getsignalnotificationrules description: Datadog Get the List of Signal-based Notification Rules call: datadog-rules.getsignalnotificationrules outputParameters: - type: object mapping: $. - method: POST name: createsignalnotificationrule description: Datadog Create a New Signal-based Notification Rule call: datadog-rules.createsignalnotificationrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security/signals/notification-rules/{id} name: api-v2-security-signals-notification-rules-id description: REST surface for api-v2-security-signals-notification_rules-id. operations: - method: DELETE name: deletesignalnotificationrule description: Datadog Delete a Signal-based Notification Rule call: datadog-rules.deletesignalnotificationrule with: id: rest.id outputParameters: - type: object mapping: $. - method: GET name: getsignalnotificationrule description: Datadog Get Details of a Signal-based Notification Rule call: datadog-rules.getsignalnotificationrule with: id: rest.id outputParameters: - type: object mapping: $. - method: PATCH name: patchsignalnotificationrule description: Datadog Patch a Signal-based Notification Rule call: datadog-rules.patchsignalnotificationrule with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security/vulnerabilities/notification-rules name: api-v2-security-vulnerabilities-notification-rules description: REST surface for api-v2-security-vulnerabilities-notification_rules. operations: - method: GET name: getvulnerabilitynotificationrules description: Datadog Get the List of Vulnerability Notification Rules call: datadog-rules.getvulnerabilitynotificationrules outputParameters: - type: object mapping: $. - method: POST name: createvulnerabilitynotificationrule description: Datadog Create a New Vulnerability-based Notification Rule call: datadog-rules.createvulnerabilitynotificationrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security/vulnerabilities/notification-rules/{id} name: api-v2-security-vulnerabilities-notification-rules-id description: REST surface for api-v2-security-vulnerabilities-notification_rules-id. operations: - method: DELETE name: deletevulnerabilitynotificationrule description: Datadog Delete a Vulnerability-based Notification Rule call: datadog-rules.deletevulnerabilitynotificationrule with: id: rest.id outputParameters: - type: object mapping: $. - method: GET name: getvulnerabilitynotificationrule description: Datadog Get Details of a Vulnerability Notification Rule call: datadog-rules.getvulnerabilitynotificationrule with: id: rest.id outputParameters: - type: object mapping: $. - method: PATCH name: patchvulnerabilitynotificationrule description: Datadog Patch a Vulnerability-based Notification Rule call: datadog-rules.patchvulnerabilitynotificationrule with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/cloud-workload-security/agent-rules name: api-v2-security-monitoring-cloud-workload-security-agent-rules description: REST surface for api-v2-security_monitoring-cloud_workload_security-agent_rules. operations: - method: GET name: listcloudworkloadsecurityagentrules description: Datadog Get All Workload Protection Agent Rules (us1-fed) call: datadog-rules.listcloudworkloadsecurityagentrules outputParameters: - type: object mapping: $. - method: POST name: createcloudworkloadsecurityagentrule description: Datadog Create a Workload Protection Agent Rule (us1-fed) call: datadog-rules.createcloudworkloadsecurityagentrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/cloud-workload-security/agent-rules/{agent-rule-id} name: api-v2-security-monitoring-cloud-workload-security-agent-rules-agent-rule-id description: REST surface for api-v2-security_monitoring-cloud_workload_security-agent_rules-agent_rule_id. operations: - method: DELETE name: deletecloudworkloadsecurityagentrule description: Datadog Delete a Workload Protection Agent Rule (us1-fed) call: datadog-rules.deletecloudworkloadsecurityagentrule outputParameters: - type: object mapping: $. - method: GET name: getcloudworkloadsecurityagentrule description: Datadog Get a Workload Protection Agent Rule (us1-fed) call: datadog-rules.getcloudworkloadsecurityagentrule outputParameters: - type: object mapping: $. - method: PATCH name: updatecloudworkloadsecurityagentrule description: Datadog Update a Workload Protection Agent Rule (us1-fed) call: datadog-rules.updatecloudworkloadsecurityagentrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/configuration/suppressions name: api-v2-security-monitoring-configuration-suppressions description: REST surface for api-v2-security_monitoring-configuration-suppressions. operations: - method: GET name: listsecuritymonitoringsuppressions description: Datadog Get All Suppression Rules call: datadog-rules.listsecuritymonitoringsuppressions outputParameters: - type: object mapping: $. - method: POST name: createsecuritymonitoringsuppression description: Datadog Create a Suppression Rule call: datadog-rules.createsecuritymonitoringsuppression with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/configuration/suppressions/{suppression-id} name: api-v2-security-monitoring-configuration-suppressions-suppression-id description: REST surface for api-v2-security_monitoring-configuration-suppressions-suppression_id. operations: - method: DELETE name: deletesecuritymonitoringsuppression description: Datadog Delete a Suppression Rule call: datadog-rules.deletesecuritymonitoringsuppression outputParameters: - type: object mapping: $. - method: GET name: getsecuritymonitoringsuppression description: Datadog Get a Suppression Rule call: datadog-rules.getsecuritymonitoringsuppression outputParameters: - type: object mapping: $. - method: PATCH name: updatesecuritymonitoringsuppression description: Datadog Update a Suppression Rule call: datadog-rules.updatesecuritymonitoringsuppression with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules name: api-v2-security-monitoring-rules description: REST surface for api-v2-security_monitoring-rules. operations: - method: GET name: listsecuritymonitoringrules description: Datadog List Rules call: datadog-rules.listsecuritymonitoringrules outputParameters: - type: object mapping: $. - method: POST name: createsecuritymonitoringrule description: Datadog Create a Detection Rule call: datadog-rules.createsecuritymonitoringrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/convert name: api-v2-security-monitoring-rules-convert description: REST surface for api-v2-security_monitoring-rules-convert. operations: - method: POST name: convertsecuritymonitoringrulefromjsontoterraform description: Datadog Convert a Rule from Json to Terraform call: datadog-rules.convertsecuritymonitoringrulefromjsontoterraform with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/test name: api-v2-security-monitoring-rules-test description: REST surface for api-v2-security_monitoring-rules-test. operations: - method: POST name: testsecuritymonitoringrule description: Datadog Test a Rule call: datadog-rules.testsecuritymonitoringrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/validation name: api-v2-security-monitoring-rules-validation description: REST surface for api-v2-security_monitoring-rules-validation. operations: - method: POST name: validatesecuritymonitoringrule description: Datadog Validate a Detection Rule call: datadog-rules.validatesecuritymonitoringrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/{rule-id} name: api-v2-security-monitoring-rules-rule-id description: REST surface for api-v2-security_monitoring-rules-rule_id. operations: - method: DELETE name: deletesecuritymonitoringrule description: Datadog Delete an Existing Rule call: datadog-rules.deletesecuritymonitoringrule outputParameters: - type: object mapping: $. - method: PUT name: updatesecuritymonitoringrule description: Datadog Update an Existing Rule call: datadog-rules.updatesecuritymonitoringrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/{rule-id}/convert name: api-v2-security-monitoring-rules-rule-id-convert description: REST surface for api-v2-security_monitoring-rules-rule_id-convert. operations: - method: GET name: convertexistingsecuritymonitoringrule description: Datadog Convert an Existing Rule from Json to Terraform call: datadog-rules.convertexistingsecuritymonitoringrule outputParameters: - type: object mapping: $. - path: /v1/api/v2/security-monitoring/rules/{rule-id}/test name: api-v2-security-monitoring-rules-rule-id-test description: REST surface for api-v2-security_monitoring-rules-rule_id-test. operations: - method: POST name: testexistingsecuritymonitoringrule description: Datadog Test an Existing Rule call: datadog-rules.testexistingsecuritymonitoringrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/sensitive-data-scanner/config/rules name: api-v2-sensitive-data-scanner-config-rules description: REST surface for api-v2-sensitive-data-scanner-config-rules. operations: - method: POST name: createscanningrule description: Datadog Create Scanning Rule call: datadog-rules.createscanningrule with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/sensitive-data-scanner/config/rules/{rule-id} name: api-v2-sensitive-data-scanner-config-rules-rule-id description: REST surface for api-v2-sensitive-data-scanner-config-rules-rule_id. operations: - method: DELETE name: deletescanningrule description: Datadog Delete Scanning Rule call: datadog-rules.deletescanningrule with: body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: updatescanningrule description: Datadog Update Scanning Rule call: datadog-rules.updatescanningrule with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: datadog-rules-mcp port: 9090 transport: http description: MCP adapter for Datadog API — Rules. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: datadog-get-all-monitor-notification description: Datadog Get All Monitor Notification Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getmonitornotificationrules with: include: tools.include outputParameters: - type: object mapping: $. - name: datadog-create-monitor-notification-rule description: Datadog Create a Monitor Notification Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createmonitornotificationrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-monitor-notification-rule description: Datadog Delete a Monitor Notification Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletemonitornotificationrule with: rule_id: tools.rule_id outputParameters: - type: object mapping: $. - name: datadog-get-monitor-notification-rule description: Datadog Get a Monitor Notification Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getmonitornotificationrule with: rule_id: tools.rule_id include: tools.include outputParameters: - type: object mapping: $. - name: datadog-update-monitor-notification-rule description: Datadog Update a Monitor Notification Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatemonitornotificationrule with: rule_id: tools.rule_id body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-call-team-routing description: Datadog Get On-call Team Routing Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getoncallteamroutingrules with: team_id: tools.team_id include: tools.include outputParameters: - type: object mapping: $. - name: datadog-set-call-team-routing description: Datadog Set On-call Team Routing Rules hints: readOnly: false destructive: false idempotent: true call: datadog-rules.setoncallteamroutingrules with: team_id: tools.team_id include: tools.include body: tools.body outputParameters: - type: object mapping: $. - name: datadog-list-all-waf-custom description: Datadog List All Waf Custom Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listapplicationsecuritywafcustomrules outputParameters: - type: object mapping: $. - name: datadog-create-waf-custom-rule description: Datadog Create a Waf Custom Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createapplicationsecuritywafcustomrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-waf-custom-rule description: Datadog Delete a Waf Custom Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deleteapplicationsecuritywafcustomrule outputParameters: - type: object mapping: $. - name: datadog-get-waf-custom-rule description: Datadog Get a Waf Custom Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getapplicationsecuritywafcustomrule outputParameters: - type: object mapping: $. - name: datadog-update-waf-custom-rule description: Datadog Update a Waf Custom Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updateapplicationsecuritywafcustomrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-all-workload-protection description: Datadog Get All Workload Protection Agent Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listcsmthreatsagentrules outputParameters: - type: object mapping: $. - name: datadog-create-workload-protection-agent description: Datadog Create a Workload Protection Agent Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createcsmthreatsagentrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-workload-protection-agent description: Datadog Delete a Workload Protection Agent Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletecsmthreatsagentrule outputParameters: - type: object mapping: $. - name: datadog-get-workload-protection-agent description: Datadog Get a Workload Protection Agent Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getcsmthreatsagentrule outputParameters: - type: object mapping: $. - name: datadog-update-workload-protection-agent description: Datadog Update a Workload Protection Agent Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatecsmthreatsagentrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-list-all-rule-outcomes description: Datadog List All Rule Outcomes hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listscorecardoutcomes with: include: tools.include fields[outcome]: tools.fields[outcome] fields[rule]: tools.fields[rule] filter[outcome][service_name]: tools.filter[outcome][service_name] filter[outcome][state]: tools.filter[outcome][state] filter[rule][enabled]: tools.filter[rule][enabled] filter[rule][id]: tools.filter[rule][id] filter[rule][name]: tools.filter[rule][name] outputParameters: - type: object mapping: $. - name: datadog-list-all-rules description: Datadog List All Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listscorecardrules with: include: tools.include filter[rule][id]: tools.filter[rule][id] filter[rule][enabled]: tools.filter[rule][enabled] filter[rule][custom]: tools.filter[rule][custom] filter[rule][name]: tools.filter[rule][name] filter[rule][description]: tools.filter[rule][description] fields[rule]: tools.fields[rule] fields[scorecard]: tools.fields[scorecard] outputParameters: - type: object mapping: $. - name: datadog-create-new-rule description: Datadog Create a New Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createscorecardrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-rule description: Datadog Delete a Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletescorecardrule outputParameters: - type: object mapping: $. - name: datadog-update-existing-rule description: Datadog Update an Existing Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatescorecardrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-list-signal-based description: Datadog Get the List of Signal-based Notification Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getsignalnotificationrules outputParameters: - type: object mapping: $. - name: datadog-create-new-signal-based description: Datadog Create a New Signal-based Notification Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createsignalnotificationrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-signal-based-notification description: Datadog Delete a Signal-based Notification Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletesignalnotificationrule with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-get-details-signal-based description: Datadog Get Details of a Signal-based Notification Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getsignalnotificationrule with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-patch-signal-based-notification description: Datadog Patch a Signal-based Notification Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.patchsignalnotificationrule with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-list-vulnerability-notification description: Datadog Get the List of Vulnerability Notification Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getvulnerabilitynotificationrules outputParameters: - type: object mapping: $. - name: datadog-create-new-vulnerability-based description: Datadog Create a New Vulnerability-based Notification Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createvulnerabilitynotificationrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-vulnerability-based-notification description: Datadog Delete a Vulnerability-based Notification Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletevulnerabilitynotificationrule with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-get-details-vulnerability-notification description: Datadog Get Details of a Vulnerability Notification Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getvulnerabilitynotificationrule with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-patch-vulnerability-based-notification description: Datadog Patch a Vulnerability-based Notification Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.patchvulnerabilitynotificationrule with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-all-workload-protection-2 description: Datadog Get All Workload Protection Agent Rules (us1-fed) hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listcloudworkloadsecurityagentrules outputParameters: - type: object mapping: $. - name: datadog-create-workload-protection-agent-2 description: Datadog Create a Workload Protection Agent Rule (us1-fed) hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createcloudworkloadsecurityagentrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-workload-protection-agent-2 description: Datadog Delete a Workload Protection Agent Rule (us1-fed) hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletecloudworkloadsecurityagentrule outputParameters: - type: object mapping: $. - name: datadog-get-workload-protection-agent-2 description: Datadog Get a Workload Protection Agent Rule (us1-fed) hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getcloudworkloadsecurityagentrule outputParameters: - type: object mapping: $. - name: datadog-update-workload-protection-agent-2 description: Datadog Update a Workload Protection Agent Rule (us1-fed) hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatecloudworkloadsecurityagentrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-all-suppression-rules description: Datadog Get All Suppression Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listsecuritymonitoringsuppressions outputParameters: - type: object mapping: $. - name: datadog-create-suppression-rule description: Datadog Create a Suppression Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createsecuritymonitoringsuppression with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-suppression-rule description: Datadog Delete a Suppression Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletesecuritymonitoringsuppression outputParameters: - type: object mapping: $. - name: datadog-get-suppression-rule description: Datadog Get a Suppression Rule hints: readOnly: true destructive: false idempotent: true call: datadog-rules.getsecuritymonitoringsuppression outputParameters: - type: object mapping: $. - name: datadog-update-suppression-rule description: Datadog Update a Suppression Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatesecuritymonitoringsuppression with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-list-rules description: Datadog List Rules hints: readOnly: true destructive: false idempotent: true call: datadog-rules.listsecuritymonitoringrules outputParameters: - type: object mapping: $. - name: datadog-create-detection-rule description: Datadog Create a Detection Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createsecuritymonitoringrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-convert-rule-json-terraform description: Datadog Convert a Rule from Json to Terraform hints: readOnly: false destructive: false idempotent: false call: datadog-rules.convertsecuritymonitoringrulefromjsontoterraform with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-test-rule description: Datadog Test a Rule hints: readOnly: true destructive: false idempotent: false call: datadog-rules.testsecuritymonitoringrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-validate-detection-rule description: Datadog Validate a Detection Rule hints: readOnly: true destructive: false idempotent: false call: datadog-rules.validatesecuritymonitoringrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-existing-rule description: Datadog Delete an Existing Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletesecuritymonitoringrule outputParameters: - type: object mapping: $. - name: datadog-update-existing-rule-2 description: Datadog Update an Existing Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatesecuritymonitoringrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-convert-existing-rule-json description: Datadog Convert an Existing Rule from Json to Terraform hints: readOnly: true destructive: false idempotent: true call: datadog-rules.convertexistingsecuritymonitoringrule outputParameters: - type: object mapping: $. - name: datadog-test-existing-rule description: Datadog Test an Existing Rule hints: readOnly: true destructive: false idempotent: false call: datadog-rules.testexistingsecuritymonitoringrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-create-scanning-rule description: Datadog Create Scanning Rule hints: readOnly: false destructive: false idempotent: false call: datadog-rules.createscanningrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-scanning-rule description: Datadog Delete Scanning Rule hints: readOnly: false destructive: true idempotent: true call: datadog-rules.deletescanningrule with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-update-scanning-rule description: Datadog Update Scanning Rule hints: readOnly: false destructive: false idempotent: true call: datadog-rules.updatescanningrule with: body: tools.body outputParameters: - type: object mapping: $.