openapi: 3.0.0
info:
contact:
email: support@datadoghq.com
name: Datadog Support
url: https://www.datadoghq.com/support/
description: The Datadog API is an HTTP REST API. The API uses resource-oriented URLs to call the API, uses status codes to indicate the success or failure of requests, returns JSON from all requests, and uses standard HTTP response codes. Use the Datadog API to access the Datadog platform programmatically.
title: Datadog Account Detection API
version: '1.0'
servers:
- url: https://{subdomain}.{site}
variables:
site:
default: datadoghq.com
description: The regional site for Datadog customers.
enum:
- datadoghq.com
- us3.datadoghq.com
- us5.datadoghq.com
- ap1.datadoghq.com
- datadoghq.eu
- ddog-gov.com
subdomain:
default: api
description: The subdomain where the API is deployed.
- url: '{protocol}://{name}'
variables:
name:
default: api.datadoghq.com
description: Full site DNS name.
protocol:
default: https
description: The protocol for accessing the API.
- url: https://{subdomain}.{site}
variables:
site:
default: datadoghq.com
description: Any Datadog deployment.
subdomain:
default: api
description: The subdomain where the API is deployed.
security:
- apiKeyAuth: []
appKeyAuth: []
tags:
- name: Detection
paths:
/api/v2/security_monitoring/rules:
post:
description: Create a detection rule.
operationId: CreateSecurityMonitoringRule
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SecurityMonitoringRuleResponse'
description: OK
'400':
$ref: '#/components/responses/BadRequestResponse'
'403':
$ref: '#/components/responses/NotAuthorizedResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ:
- security_monitoring_rules_write
summary: Datadog Create a Detection Rule
tags:
- Detection
x-codegen-request-body-name: body
x-given:
cloud_configuration_rule:
parameters:
- name: body
value: "{\n \"name\": \"{{ unique }}_cloud\",\n \"tags\": [\"a:tag\"],\n \"type\": \"cloud_configuration\",\n \"isEnabled\": false,\n \"message\": \"Cloud configuration rule\",\n \"options\": {\n \"complianceRuleOptions\": {\n \"resourceType\": \"gcp_compute_disk\",\n \"regoRule\": {\n \"policy\": \"package datadog\\n\\nimport data.datadog.output as dd_output\\n\\nimport future.keywords.contains\\nimport future.keywords.if\\nimport future.keywords.in\\n\\nmilliseconds_in_a_day := ((1000 * 60) * 60) * 24\\n\\neval(iam_service_account_key) = \\\"skip\\\" if {\\n\\tiam_service_account_key.disabled\\n} else = \\\"pass\\\" if {\\n\\t(iam_service_account_key.resource_seen_at / milliseconds_in_a_day) - (iam_service_account_key.valid_after_time / milliseconds_in_a_day) <= 90\\n} else = \\\"fail\\\"\\n\\n# This part remains unchanged for all rules\\nresults contains result if {\\n\\tsome resource in input.resources[input.main_resource_type]\\n\\tresult := dd_output.format(resource, eval(resource))\\n}\\n\",\n \"resourceTypes\": [\n \"gcp_compute_disk\"\n ]\n },\n \"complexRule\": false\n }\n },\n \"complianceSignalOptions\": {\n \"userActivationStatus\": true,\n \"userGroupByFields\": [\"@account_id\"]\n },\n \"cases\": [\n {\n \"status\": \"info\",\n \"notifications\": [\"channel\"]\n }\n ]\n}"
step: there is a valid "cloud_configuration_rule" in the system
security_rule:
parameters:
- name: body
value: "{\n \"name\": \"{{ unique }}\",\n \"queries\": [{\n \"query\": \"@test:true\",\n \"aggregation\": \"count\",\n \"groupByFields\": [],\n \"distinctFields\": [],\n \"metrics\": []\n }],\n \"filters\": [],\n \"cases\": [{\n \"name\": \"\",\n \"status\": \"info\",\n \"condition\": \"a > 0\",\n \"notifications\": []\n }],\n \"options\": {\n \"evaluationWindow\": 900,\n \"keepAlive\": 3600,\n \"maxSignalDuration\": 86400\n },\n \"message\": \"Test rule\",\n \"tags\": [],\n \"isEnabled\": true,\n \"type\": \"log_detection\"\n}"
step: there is a valid "security_rule" in the system
security_rule_bis:
parameters:
- name: body
value: "{\n \"name\": \"{{ unique }}_bis\",\n \"queries\": [{\n \"query\": \"@test:false\",\n \"aggregation\": \"count\",\n \"groupByFields\": [],\n \"distinctFields\": [],\n \"metrics\": []\n }],\n \"filters\": [],\n \"cases\": [{\n \"name\": \"\",\n \"status\": \"info\",\n \"condition\": \"a > 0\",\n \"notifications\": []\n }],\n \"options\": {\n \"evaluationWindow\": 900,\n \"keepAlive\": 3600,\n \"maxSignalDuration\": 86400\n },\n \"message\": \"Test rule Bis\",\n \"tags\": [],\n \"isEnabled\": true,\n \"type\": \"log_detection\"\n}"
step: there is a valid "security_rule_bis" in the system
x-menu-order: 4
x-permission:
operator: OR
permissions:
- security_monitoring_rules_write
x-undo:
operationId: DeleteSecurityMonitoringRule
parameters:
- name: rule_id
source: id
type: unsafe
x-api-evangelist-processing:
PascalCaseOperationSummaries: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/api/v2/security_monitoring/rules/validation:
post:
description: Validate a detection rule.
operationId: ValidateSecurityMonitoringRule
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SecurityMonitoringRuleValidatePayload'
required: true
responses:
'204':
description: OK
'400':
$ref: '#/components/responses/BadRequestResponse'
'403':
$ref: '#/components/responses/NotAuthorizedResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ:
- security_monitoring_rules_write
summary: Datadog Validate a Detection Rule
tags:
- Detection
x-codegen-request-body-name: body
x-menu-order: 10
x-permission:
operator: OR
permissions:
- security_monitoring_rules_write
x-undo:
type: idempotent
x-api-evangelist-processing:
PascalCaseOperationSummaries: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
SecurityMonitoringSignalRuleCreatePayload:
description: Create a new signal correlation rule.
properties:
cases:
description: Cases for generating signals.
example: []
items:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate'
type: array
filters:
description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules.
items:
$ref: '#/components/schemas/SecurityMonitoringFilter'
type: array
hasExtendedTitle:
description: Whether the notifications include the triggering group-by values in their title.
example: true
type: boolean
isEnabled:
description: Whether the rule is enabled.
example: true
type: boolean
message:
description: Message for generated signals.
example: ''
type: string
name:
description: The name of the rule.
example: My security monitoring rule.
type: string
options:
$ref: '#/components/schemas/SecurityMonitoringRuleOptions'
queries:
description: Queries for selecting signals which are part of the rule.
example: []
items:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery'
type: array
tags:
description: Tags for generated signals.
example:
- env:prod
- team:security
items:
description: Tag.
type: string
type: array
type:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleType'
required:
- name
- isEnabled
- queries
- options
- cases
- message
type: object
SecurityMonitoringRuleEvaluationWindow:
description: 'A time window is specified to match when at least one of the cases matches true. This is a sliding window
and evaluates in real time. For third party detection method, this field is not used.'
enum:
- 0
- 60
- 300
- 600
- 900
- 1800
- 3600
- 7200
- 10800
- 21600
- 43200
- 86400
format: int32
type: integer
x-enum-varnames:
- ZERO_MINUTES
- ONE_MINUTE
- FIVE_MINUTES
- TEN_MINUTES
- FIFTEEN_MINUTES
- THIRTY_MINUTES
- ONE_HOUR
- TWO_HOURS
- THREE_HOURS
- SIX_HOURS
- TWELVE_HOURS
- ONE_DAY
SecurityMonitoringStandardDataSource:
default: logs
description: Source of events, either logs, audit trail, or Datadog events.
enum:
- logs
- audit
- app_sec_spans
- spans
- security_runtime
- network
- events
example: logs
type: string
x-enum-varnames:
- LOGS
- AUDIT
- APP_SEC_SPANS
- SPANS
- SECURITY_RUNTIME
- NETWORK
- EVENTS
SecurityMonitoringRuleTypeRead:
description: The rule type.
enum:
- log_detection
- infrastructure_configuration
- workload_security
- cloud_configuration
- application_security
type: string
x-enum-varnames:
- LOG_DETECTION
- INFRASTRUCTURE_CONFIGURATION
- WORKLOAD_SECURITY
- CLOUD_CONFIGURATION
- APPLICATION_SECURITY
SecurityMonitoringRuleMaxSignalDuration:
description: 'A signal will "close" regardless of the query being matched once the time exceeds the maximum duration.
This time is calculated from the first seen timestamp.'
enum:
- 0
- 60
- 300
- 600
- 900
- 1800
- 3600
- 7200
- 10800
- 21600
- 43200
- 86400
format: int32
type: integer
x-enum-varnames:
- ZERO_MINUTES
- ONE_MINUTE
- FIVE_MINUTES
- TEN_MINUTES
- FIFTEEN_MINUTES
- THIRTY_MINUTES
- ONE_HOUR
- TWO_HOURS
- THREE_HOURS
- SIX_HOURS
- TWELVE_HOURS
- ONE_DAY
SecurityMonitoringSignalRuleResponseQuery:
description: Query for matching rule on signals.
properties:
aggregation:
$ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation'
correlatedByFields:
description: Fields to correlate by.
items:
description: Field.
type: string
type: array
correlatedQueryIndex:
description: Index of the rule query used to retrieve the correlated field.
format: int32
maximum: 9
type: integer
example: 42
defaultRuleId:
description: Default Rule ID to match on signals.
example: d3f-ru1-e1d
type: string
distinctFields:
description: Field for which the cardinality is measured. Sent as an array.
items:
description: Field.
type: string
type: array
groupByFields:
description: Fields to group by.
items:
description: Field.
type: string
type: array
metrics:
description: Group of target fields to aggregate over.
items:
description: Field.
type: string
type: array
name:
description: Name of the query.
type: string
example: Example Monitor
ruleId:
description: Rule ID to match on signals.
example: org-ru1-e1d
type: string
type: object
SecurityMonitoringRuleCaseActionOptionsUserBehaviorName:
description: Used with the case action of type 'user_behavior'. The value specified in this field is applied as a risk tag to all users affected by the rule.
type: string
SecurityMonitoringRuleTypeCreate:
description: The rule type.
enum:
- application_security
- log_detection
- workload_security
type: string
x-enum-varnames:
- APPLICATION_SECURITY
- LOG_DETECTION
- WORKLOAD_SECURITY
SecurityMonitoringRuleNewValueOptionsLearningThreshold:
default: 0
description: A number of occurrences after which signals will be generated for values that weren't learned.
enum:
- 0
- 1
format: int32
type: integer
x-enum-varnames:
- ZERO_OCCURRENCES
- ONE_OCCURRENCE
SecurityMonitoringRuleNewValueOptionsForgetAfter:
description: The duration in days after which a learned value is forgotten.
enum:
- 1
- 2
- 7
- 14
- 21
- 28
format: int32
type: integer
x-enum-varnames:
- ONE_DAY
- TWO_DAYS
- ONE_WEEK
- TWO_WEEKS
- THREE_WEEKS
- FOUR_WEEKS
SecurityMonitoringRuleCaseActionOptions:
additionalProperties: {}
description: Options for the rule action
properties:
duration:
description: Duration of the action in seconds. 0 indicates no expiration.
example: 0
format: int64
minimum: 0
type: integer
userBehaviorName:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName'
type: object
SecurityMonitoringSignalRuleType:
description: The rule type.
enum:
- signal_correlation
type: string
x-enum-varnames:
- SIGNAL_CORRELATION
CloudConfigurationRuleType:
description: The rule type.
enum:
- cloud_configuration
type: string
x-enum-varnames:
- CLOUD_CONFIGURATION
SecurityMonitoringRuleCreatePayload:
description: Create a new rule.
oneOf:
- $ref: '#/components/schemas/SecurityMonitoringStandardRuleCreatePayload'
- $ref: '#/components/schemas/SecurityMonitoringSignalRuleCreatePayload'
- $ref: '#/components/schemas/CloudConfigurationRuleCreatePayload'
APIErrorResponse:
description: API error response.
properties:
errors:
description: A list of errors.
example:
- Bad Request
items:
description: A list of items.
example: Bad Request
type: string
type: array
required:
- errors
type: object
SecurityMonitoringRuleQueryAggregation:
description: The aggregation type.
enum:
- count
- cardinality
- sum
- max
- new_value
- geo_data
- event_count
- none
type: string
x-enum-varnames:
- COUNT
- CARDINALITY
- SUM
- MAX
- NEW_VALUE
- GEO_DATA
- EVENT_COUNT
- NONE
SecurityMonitoringThirdPartyRootQuery:
description: A query to be combined with the third party case query.
properties:
groupByFields:
description: Fields to group by.
items:
description: Field.
type: string
type: array
query:
description: Query to run on logs.
example: source:cloudtrail
type: string
type: object
SecurityMonitoringRuleNewValueOptionsLearningMethod:
default: duration
description: The learning method used to determine when signals should be generated for values that weren't learned.
enum:
- duration
- threshold
type: string
x-enum-varnames:
- DURATION
- THRESHOLD
SecurityMonitoringRuleResponse:
description: Create a new rule.
oneOf:
- $ref: '#/components/schemas/SecurityMonitoringStandardRuleResponse'
- $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponse'
CloudConfigurationRuleCreatePayload:
description: Create a new cloud configuration rule.
properties:
cases:
description: 'Description of generated findings and signals (severity and channels to be notified in case of a signal). Must contain exactly one item.
'
items:
$ref: '#/components/schemas/CloudConfigurationRuleCaseCreate'
type: array
complianceSignalOptions:
$ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions'
filters:
description: Additional queries to filter matched events before they are processed.
items:
$ref: '#/components/schemas/SecurityMonitoringFilter'
type: array
isEnabled:
description: Whether the rule is enabled.
example: true
type: boolean
message:
description: Message in markdown format for generated findings and signals.
example: '#Description
Explanation of the rule.
#Remediation
How to fix the security issue.
'
type: string
name:
description: The name of the rule.
example: My security monitoring rule.
type: string
options:
$ref: '#/components/schemas/CloudConfigurationRuleOptions'
tags:
description: Tags for generated findings and signals.
example:
- env:prod
- team:security
items:
description: Tag.
type: string
type: array
type:
$ref: '#/components/schemas/CloudConfigurationRuleType'
required:
- name
- isEnabled
- options
- complianceSignalOptions
- cases
- message
type: object
SecurityMonitoringRuleCaseAction:
description: Action to perform when a signal is triggered. Only available for Application Security rule type.
properties:
options:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptions'
type:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseActionType'
type: object
CloudConfigurationRegoRule:
description: Rule details.
properties:
policy:
description: 'The policy written in `rego`, see: https://www.openpolicyagent.org/docs/latest/policy-language/'
example: "package datadog\n\nimport data.datadog.output as dd_output\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n # Logic that evaluates to true if the resource should be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that evaluates to true if the resource is not compliant\n true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n some resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, eval(resource))\n}\n"
type: string
resourceTypes:
description: List of resource types that will be evaluated upon. Must have at least one element.
example:
- gcp_iam_service_account
- gcp_iam_policy
items:
type: string
type: array
required:
- policy
- resourceTypes
type: object
SecurityMonitoringSignalRulePayload:
description: The payload of a signal correlation rule.
properties:
cases:
description: Cases for generating signals.
example: []
items:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate'
type: array
filters:
description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules.
items:
$ref: '#/components/schemas/SecurityMonitoringFilter'
type: array
hasExtendedTitle:
description: Whether the notifications include the triggering group-by values in their title.
example: true
type: boolean
isEnabled:
description: Whether the rule is enabled.
example: true
type: boolean
message:
description: Message for generated signals.
example: ''
type: string
name:
description: The name of the rule.
example: My security monitoring rule.
type: string
options:
$ref: '#/components/schemas/SecurityMonitoringRuleOptions'
queries:
description: Queries for selecting signals which are part of the rule.
example: []
items:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery'
type: array
tags:
description: Tags for generated signals.
example:
- env:prod
- team:security
items:
description: Tag.
type: string
type: array
type:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleType'
required:
- name
- isEnabled
- queries
- options
- cases
- message
type: object
SecurityMonitoringRuleNewValueOptionsLearningDuration:
default: 0
description: 'The duration in days during which values are learned, and after which signals will be generated for values that
weren''t learned. If set to 0, a signal will be generated for all new values after the first value is learned.'
enum:
- 0
- 1
- 7
format: int32
type: integer
x-enum-varnames:
- ZERO_DAYS
- ONE_DAY
- SEVEN_DAYS
SecurityMonitoringStandardRuleQuery:
description: Query for matching rule.
properties:
aggregation:
$ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation'
dataSource:
$ref: '#/components/schemas/SecurityMonitoringStandardDataSource'
distinctFields:
description: Field for which the cardinality is measured. Sent as an array.
items:
description: Field.
type: string
type: array
groupByFields:
description: Fields to group by.
items:
description: Field.
type: string
type: array
hasOptionalGroupByFields:
description: When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values.
example: false
readOnly: true
type: boolean
metric:
deprecated: true
description: '(Deprecated) The target field to aggregate over when using the sum or max
aggregations. `metrics` field should be used instead.'
type: string
example: example_value
metrics:
description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values.
items:
description: Field.
type: string
type: array
name:
description: Name of the query.
type: string
example: Example Monitor
query:
description: Query to run on logs.
example: a > 3
type: string
type: object
SecurityMonitoringFilterAction:
description: The type of filtering action.
enum:
- require
- suppress
type: string
x-enum-varnames:
- REQUIRE
- SUPPRESS
SecurityMonitoringSignalRuleResponse:
description: Rule.
properties:
cases:
description: Cases for generating signals.
items:
$ref: '#/components/schemas/SecurityMonitoringRuleCase'
type: array
createdAt:
description: When the rule was created, timestamp in milliseconds.
format: int64
type: integer
example: 42
creationAuthorId:
description: User ID of the user who created the rule.
format: int64
type: integer
example: 42
deprecationDate:
description: When the rule will be deprecated, timestamp in milliseconds.
format: int64
type: integer
example: 42
filters:
description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules.
items:
$ref: '#/components/schemas/SecurityMonitoringFilter'
type: array
hasExtendedTitle:
description: Whether the notifications include the triggering group-by values in their title.
type: boolean
example: true
id:
description: The ID of the rule.
type: string
example: abc-123-def
isDefault:
description: Whether the rule is included by default.
type: boolean
example: true
isDeleted:
description: Whether the rule has been deleted.
type: boolean
example: true
isEnabled:
description: Whether the rule is enabled.
type: boolean
example: true
message:
description: Message for generated signals.
type: string
example: CPU usage is high on {{host.name}}
name:
description: The name of the rule.
type: string
example: Example Monitor
options:
$ref: '#/components/schemas/SecurityMonitoringRuleOptions'
queries:
description: Queries for selecting logs which are part of the rule.
items:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleResponseQuery'
type: array
tags:
description: Tags for generated signals.
items:
description: Tag.
type: string
type: array
type:
$ref: '#/components/schemas/SecurityMonitoringSignalRuleType'
updateAuthorId:
description: User ID of the user who updated the rule.
format: int64
type: integer
example: 42
version:
description: The version of the rule.
format: int64
type: integer
example: 42
type: object
SecurityMonitoringRuleOptions:
description: Options.
properties:
complianceRuleOptions:
$ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions'
decreaseCriticalityBasedOnEnv:
$ref: '#/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv'
detectionMethod:
$ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod'
evaluationWindow:
$ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow'
hardcodedEvaluatorType:
$ref: '#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType'
impossibleTravelOptions:
$ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions'
keepAlive:
$ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive'
maxSignalDuration:
$ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration'
newValueOptions:
$ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions'
thirdPartyRuleOptions:
$ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions'
type: object
SecurityMonitoringRuleCaseCreate:
description: Case when signal is generated.
properties:
actions:
description: Action to perform for each rule case.
items:
$ref: '#/components/schemas/SecurityMonitoringRuleCaseAction'
type: array
condition:
description: 'A case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated
based on the event counts in the previously defined queries.'
type: string
example: example_value
name:
description: Name of the case.
type: string
example: Example Monitor
notifications:
description: Notification targets.
items:
description: Notification.
type: string
type: array
status:
$ref: '#/components/schemas/SecurityMonitoringRuleSeverity'
required:
- status
type: object
SecurityMonitoringRuleThirdPartyOptions:
description: Options on third party detection method.
properties:
defaultNotifications:
description: Notification targets for the logs that do not correspond to any of the cases.
items:
description: Notification.
type: string
type: array
defaultStatus:
$ref: '#/components/schemas/SecurityMonitoringRuleSeverity'
rootQueries:
description: Queries to be combined with third party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert.
items:
$ref: '#/components/schemas/SecurityMonitoringThirdPartyRootQuery'
type: array
signalTitleTemplate:
description: A template for the signal title; if omitted, the title is generated based on the case name.
type: string
example: Example Monitor
type: object
SecurityMonitoringSignalRuleQuery:
description: Query for matching rule on signals.
properties:
aggregation:
$ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation'
correlatedByFields:
description: Fields to group by.
items:
description: Field.
type: string
type: array
correlatedQueryIndex:
description: Index of the rule query used to retrieve the correlated field.
format: int32
maximum: 9
type: integer
example: 42
metrics:
description: Group of target fields to aggregate over.
items:
description: Field.
type: string
type: array
name:
description: Name of the query.
type: string
example: Example Monitor
ruleId:
description: Rule ID to match on signals.
example: org-ru1-e1d
type: string
required:
- ruleId
type: object
CloudConfigurationRuleComplianceSignalOptions:
description: How to generate compliance signals. Useful for cloud_configuration rules only.
properties:
defaultActivationStatus:
description: The default activation status.
nullable: true
type: boolean
example: true
defaultGroupByFields:
description: The default group by fields.
items:
type: string
nullable: true
type: array
userActivationStatus:
description: Whether signals will be sent.
nullable: true
type: boolean
example: true
use
# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/datadog/refs/heads/main/openapi/datadog-detection-api-openapi.yml