List Bits Security Analyst investigations
List Bits Security Analyst investigations.
Without filter[signal_id], returns the latest investigation of each signal, filtered, sorted, and paginated. With filter[signal_id], returns every investigation of that signal, newest first. When the signal has no investigation, the first page carries meta.reason, which says why.
Request
- Base URLhttps://api.datadoghq.com
- Auth
- API key in header DD-API-KEY and API key in header DD-APPLICATION-KEY
- or OAuth 2Authorization code/oauth2/v1/authorizeToken URL/oauth2/v1/tokenScopessecurity_monitoring_signals_read
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
List every investigation of this signal, newest first. Accepts the signal ID in its V1 form, which starts with AQ, or in its longer V3 form, which starts with Aw. Investigations carry the V1 form, so their signal_id can differ from the ID you pass. Can't be combined with other filters or with sort.
Only investigations whose signal title contains this text, case-insensitive.
Only investigations last updated at or after this time, as RFC 3339 or milliseconds since the epoch.
Only investigations last updated at or before this time, as RFC 3339 or milliseconds since the epoch.
Only investigations with one of these verdicts: benign, suspicious, or malicious. Comma-separated values; an investigation matches any of them.
Only investigations in one of these states: investigating or completed. Investigations reported as failed match investigating. Comma-separated values; an investigation matches any of them.
Only investigations of signals from one of these detection rule IDs. Comma-separated values; an investigation matches any of them.
Only investigations of signals from detection rules of one of these types, as returned by the count with field=rule_type. Comma-separated values; an investigation matches any of them.
Only investigations of signals with one of these severities: info, low, medium, high, or critical. Comma-separated values; an investigation matches any of them.
Only investigations of signals from one of these sources, as returned by the count with field=signal_source. Comma-separated values; an investigation matches any of them.
Only investigations whose signal has all of these tags, written key:value. Comma-separated values; an investigation must have every one of them.
Only investigations whose signal has all of these entities. Write each entity as attribute:value, matching the values returned by the count endpoint with field=entity. Comma-separated values; an investigation must have every one of them.
Sort field, prefixed with - for descending: updated_at, severity, verdict, rule_id, or signal_title. Defaults to -updated_at. verdict sorts by severity (benign, suspicious, malicious), so -verdict puts malicious first.
Page number, starting at 1.
Number of investigations per page.
Response
OK
Example response
{
"data": [
{
"attributes": {
"created_at": "2026-10-30T14:02:40Z",
"is_latest": true,
"rule_id": "abc-def-ghi",
"signal": {
"severity": "medium",
"sources": [
"okta"
],
"tactic": "TA0001-initial-access",
"tags": [
"source:okta"
],
"technique": "T1078-valid-accounts",
"timestamp": "2026-10-30T14:02:11Z",
"title": "Unusual login location for a user"
},
"signal_id": "AQAAAaGNHjq4XzqcIQAAAABBWm8xY0wybUFBQmNYSjl1QUFBQUFBQUE",
"state": "completed",
"updated_at": "2026-10-30T14:15:02Z",
"verdict": "benign"
},
"id": "7f3c9a2e-5d14-4e8b-9c61-2a0b4f8d1e53",
"type": "investigations"
}
],
"meta": {
"reason": "investigation_not_started",
"total_count": 1
}
}Changes
Changes to this operation have not been checked yet.