Get Alerts

Cortex Xpanse REST API

post /public_api/v2/alerts/get_alerts_multi_events

Get a single alert or list of alerts with multiple events. - Response is concatenated using AND condition (OR is not supported). - Maximum result set size is 100. - Offset is the zero-based number of alerts from the start of the result set.

Note: You can send a request to retrieve all or filtered results.

Required license: Cortex Xpanse Expander

CURL
curl -X POST \ -H "Accept: application/json" \ -H "Content-Type: application/json" -H "authorization: authorization_example" -H "x-xdr-auth-id: xXdrAuthId_example" \ "https://api-yourfqdn/public_api/v2/alerts/get_alerts_multi_events" \ -d '{ "request_data" : { "search_from" : 0, "next_page_token" : "next_page_token", "filters" : [ { "field" : "field", "value" : [ "", "" ], "operator" : "operator" }, { "field" : "field", "value" : [ "", "" ], "operator" : "operator" } ], "sort" : { "field" : "field", "keyword" : "keyword" }, "search_to" : 6, "use_page_token" : true } }'
Request headers
authorization
required
String
api_key
Example: authorization_example
x-xdr-auth-id
required
String
api_key_id
Example: xXdrAuthId_example
Request
Body
optional
If no parameters are included, all results will be returned.
Example: {"request_data":{}}
request_data
required

A dictionary containing the API request fields.

An empty dictionary returns all results.

filters
optional
Array
An array of filter fields.
field
optional
String

Identifies the alert fields the filter is matching. Possible values are:

  • alert_id_list— List of integers representing Alert IDs. Use this filter to request a single alert.
  • alert_source
  • business_units_list
  • cloud_management_status
  • creation_time
  • external_id_list
  • severity
  • status
  • tags
  • xpanse_policy_id— Matches on the specified xpanse policy IDs. Xpanse policies are referred to as attack surface rules in the Expander UI.
operator
optional
String

String that identifies the comparison operator you want to use for this filter. Possible values:

  • in— use with alert_id_list, alert_source, business_units_list, cloud_management_status, tags, xpanse_policy_id, and severity.
  • gte/lte— use with creation_time only
value
optional
Array of objects

Value that this filter must match. The contents of this field will differ depending on the alert field that you specified for this filter:

  • alert_id_list— List of integers. Each item in the list must be an alert ID.
  • alert_source— List of strings.
  • business_units_list— String or list of strings in the format "BU name" or "BU:BU name", for example “Acme & Co, Inc.” or “BU:Acme & Co, Inc.”
  • cloud_management_status— String. Values are Managed Cloud, Unmanaged Cloud, and Not Applicable.
  • creation_time— Integer representing the number of seconds or milliseconds after the Unix epoch, UTC timezone. The value is returned in the response under the detection_timestamp field and represented in the console under the TIMESTAMP field.
  • external_id_list— List of strings representing external IDs.
  • severity— Valid values: low, medium, high, critical, informational
  • status— Valid values: new, resolved_no_risk, resolved_risk_accepted, resolved_no_longer_observed, resolved_contested_asset, resolved_remediated_automatically, resolved, under_investigation.
  • tags— List of strings indicating the tags to filter on in the format "tag-family:tag-name", for example "AR:registered to you".
  • xpanse_policy_id— List of strings representing the xpanse policy IDs.
search_from
optional
Integer

An integer representing the starting offset within the query result set from which you want alerts returned.

Alerts are returned as a zero-based list. Any alert indexed less than this value is not returned in the final result set and defaults to zero.

search_to
optional
Integer

An integer representing the end offset within the result set after which you do not want alerts returned.

Alerts in the alerts list that are indexed higher than this value are not returned in the final results set. Defaults to 100, which returns all alerts to the end of the list. Use this field to specify the number of results on a page when using page token pagination.

Max value - 100

sort
optional
Identifies the sort order for the result set. Sort is not supported when using the use_page_token/page_token fields.
field
optional
String
Can either be severity or creation_time.
keyword
optional
String
Can either be ASC (ascending order) or DESC (descending order). Case sensitive.
use_page_token
optional
Boolean
Use "use_page_token":true in the initial request to paginate the response data. Sort is not supported when using the use_page_token/next_page_token fields.
next_page_token
optional
String
If "use_page_token":true was included in the initial request, the response for that request will include a page token. Use "next_page_token":"string" to pass that page token into the next request to paginate the next set of data.
Responses

Successful response

Body
reply
optional
total_count
optional
Integer
The number of total results of this filter without paging. If the filter returned 10,000 results or more than 9,999 will be the value and you can use paging to view the entire set of data.
result_count
optional
Integer
The number of alerts actually returned as result (integer).
alerts
optional
Array
A list of alerts.
category
optional
String
project
optional
String
cloud_provider
optional
String
resource_sub_type
optional
Object
resource_type
optional
Object
action_country
optional
Array of strings
description
optional
String
events
optional
String
event_type
optional
String
is_whitelisted
optional
Boolean
image_name
optional
Object
action_local_ip
optional
Object
action_local_port
optional
Object
action_external_hostname
optional
Object
action_remote_ip
optional
Object
action_remote_port
optional
Array of integers
matching_service_rule_id
optional
Object
starred
optional
Boolean
external_id
optional
String
severity
optional
String
matching_status
optional
String
end_match_attempt_ts
optional
Object
local_insert_ts
optional
Integer
last_modified_ts
optional
Object
case_id
optional
Integer
deduplicate_tokens
optional
Object
filter_rule_id
optional
Object
event_id
optional
Object
event_timestamp
optional
Array of integers
action_local_ip_v6
optional
Object
action_remote_ip_v6
optional
Object
alert_type
optional
String
resolution_status
optional
String
resolution_comment
optional
Object
dynamic_fields
optional
Object
malicious_urls
optional
Object
last_observed
optional
Integer
country_codes
optional
Array of strings
cloud_providers
optional
Array of strings
ipv4_addresses
optional
Array of strings
ipv6_addresses
optional
Object
domain_names
optional
Object
service_ids
optional
Array of strings
website_ids
optional
Object
asset_ids
optional
Array of strings
certificate
optional
Object
port_protocol
optional
String
business_unit_hierarchies
optional
Object
attack_surface_rule_name
optional
String
remediation_guidance
optional
String
alert_id
optional
String
detection_timestamp
optional
Integer
name
optional
String
endpoint_id
optional
Object
host_ip
optional
Object
host_name
optional
String
action
optional
String
original_tags
optional
Object
user_name
optional
Object
mac_addresses
optional
Object
source
optional
Object
action_pretty
optional
String

Bad Request. Got an invalid JSON.

Body
The query result upon error.
err_code
optional
String
HTTP response code.
err_msg
optional
String
Error message.
err_extra
optional
String
Additional information describing the error.

Unauthorized access. An issue occurred during authentication. This can indicate an incorrect key, id, or other invalid authentication parameters.

Body
The query result upon error.
err_code
optional
String
HTTP response code.
err_msg
optional
String
Error message.
err_extra
optional
String
Additional information describing the error.

Unauthorized access. User does not have the required license type to run this API.

Body
The query result upon error.
err_code
optional
String
HTTP response code.
err_msg
optional
String
Error message.
err_extra
optional
String
Additional information describing the error.

Forbidden access. The provided API Key does not have the required RBAC permissions to run this API.

Body
The query result upon error.
err_code
optional
String
HTTP response code.
err_msg
optional
String
Error message.
err_extra
optional
String
Additional information describing the error.

Internal server error. A unified status for API communication type errors.

Body
The query result upon error.
err_code
optional
String
HTTP response code.
err_msg
optional
String
Error message.
err_extra
optional
String
Additional information describing the error.