Skip to main content

Detections

A detection is a Hamelin query that runs continuously over one or more datasets and emits a signal each time its conditions match.

A detection reads events, usually a normalized events_ecs.{integration} dataset, and shapes each match into the signal schema. Its query can be any incremental Hamelin query: a simple per-event filter, a time-based aggregation, a sliding-window correlation, or a sliding-window ordered correlation. When you deploy a detection, it derives a continuous Table that materializes its signals incrementally, and each signal can open an alert. A detection's id is prefixed DET_. See Write a detection for how to author, validate, and deploy one.

Inputs​

FieldTypeRequiredDescription
namestringRequiredDetection name.
descriptionstringOptionalFree-text documentation, typically Markdown.
querystringRequiredThe Hamelin query that produces signals. Must not be empty to commit.
typeenumRequiredCorrelation type: QUERY or SCENARIO. Only QUERY is supported. Default QUERY.
levelenumRequiredDetection severity classification: INFORMATIONAL, LOW, MEDIUM, HIGH, CRITICAL. Default LOW.
maturityenumRequiredLifecycle stage: EXPERIMENTAL, TEST, STABLE, DEPRECATED. Default EXPERIMENTAL.
maximumLatencyenumRequiredCeiling on how stale materialized signals may be: MAX_1H (one hour) or MAX_1D (one day). Default MAX_1H. Sets the refresh cadence of the derived Table.
deploybooleanRequiredWhether the detection is live. true derives and materializes the signal Table. false leaves it as saved content.
createCasebooleanOptionalWhether signals from this detection open a case. Default false. A signal with signal.skip_alert set to true stays in its dataset and does not enter triage.
startsAttimestampOptionalSignals are only generated for events at or after this time. Defaults to the detection's creation time.
retentionDaysintegerOptionalDays to retain materialized signals. Null keeps the Space default.
responseInstructionsstringOptionalGuidance for triage agents evaluating alerts from this detection.
minimumPriorityintegerOptionalPriority floor for alerts from this detection. When set, alerts always escalate to at least this priority. Null disables the floor.
accumulationKeyarray<string>OptionalSignal field paths to group by when accumulating signals into one alert. Null disables accumulation. Accepts top-level fields (message, timestamp, tags, labels, event, detection) and dot-notation nested paths (labels.<key>, event.<field>, detection.<field>). A multi-segment path must resolve to a scalar leaf.
archivedbooleanOptionalWhether the detection is archived. Archived detections do not run. Default false.
folderPathstringOptionalFolder location within the Space, e.g. Detections/AWS.

Outputs​

FieldTypeDescription
folderIdstringResource ID of the folder, or null when the detection is not in a folder.
deploymentStatusenumMaterialization state of the derived signal Table: UNDEPLOYED, DEPLOY_PENDING, DEPLOY_IN_PROGRESS, DEPLOYED, UPDATE_PENDING, UPDATE_IN_PROGRESS, REFRESH_IN_PROGRESS, FAILED, ARCHIVED, CLEANUP_PENDING, CLEANUP_IN_PROGRESS.
tableobjectThe derived signal Table when deployed. Carries its id (TBL_), status, and lastMaterializedAt.
installedFromPackobjectPresent when the detection was installed from a content pack.
readOnlybooleantrue when the detection cannot be edited in place, such as one installed from a content pack.

Plus the common resource fields.