Retrieve compliance standards with optional filtering, sorting and pagination.
- The response is concatenated using AND condition (OR is not supported)
- The maximum result set size is >100
- Offset is the zero-based number of standards from the start of the result set
Required license: Cortex Cloud Runtime Security or Cortex Cloud Posture Management
curl -X 'POST'
-H "Authorization: [[apiKey]]"
\
-H "x-xdr-auth-id: [[apiKey]]"
\
-H
'Accept: application/json'
-H
'Content-Type: application/json'
'https://api-yourfqdn/public_api/v1/compliance/get_standards'
-d
''
import http.client
conn = http.client.HTTPSConnection("api-yourfqdn")
payload = "{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}"
headers = {
'x-xdr-auth-id': "REPLACE_KEY_VALUE",
'content-type': "application/json"
}
conn.request("POST", "/public_api/v1/compliance/get_standards", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api-yourfqdn/public_api/v1/compliance/get_standards")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["x-xdr-auth-id"] = 'REPLACE_KEY_VALUE'
request["content-type"] = 'application/json'
request.body = "{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"request_data": {
"filters": [
{
"field": "name",
"operator": "eq",
"value": "string"
}
],
"sort": {
"field": "name",
"keyword": "asc"
},
"search_from": 0,
"search_to": 100
}
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api-yourfqdn/public_api/v1/compliance/get_standards");
xhr.setRequestHeader("x-xdr-auth-id", "REPLACE_KEY_VALUE");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);HttpResponse<String> response = Unirest.post("https://api-yourfqdn/public_api/v1/compliance/get_standards")
.header("x-xdr-auth-id", "REPLACE_KEY_VALUE")
.header("content-type", "application/json")
.body("{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}")
.asString();import Foundation
let headers = [
"x-xdr-auth-id": "REPLACE_KEY_VALUE",
"content-type": "application/json"
]
let parameters = ["request_data": [
"filters": [
[
"field": "name",
"operator": "eq",
"value": "string"
]
],
"sort": [
"field": "name",
"keyword": "asc"
],
"search_from": 0,
"search_to": 100
]] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://api-yourfqdn/public_api/v1/compliance/get_standards")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-yourfqdn/public_api/v1/compliance/get_standards",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}",
CURLOPT_HTTPHEADER => [
"content-type: application/json",
"x-xdr-auth-id: REPLACE_KEY_VALUE"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://api-yourfqdn/public_api/v1/compliance/get_standards");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "x-xdr-auth-id: REPLACE_KEY_VALUE");
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://api-yourfqdn/public_api/v1/compliance/get_standards");
var request = new RestRequest(Method.POST);
request.AddHeader("x-xdr-auth-id", "REPLACE_KEY_VALUE");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"request_data\":{\"filters\":[{\"field\":\"name\",\"operator\":\"eq\",\"value\":\"string\"}],\"sort\":{\"field\":\"name\",\"keyword\":\"asc\"},\"search_from\":0,\"search_to\":100}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);request_dataobject
filtersarrayArray of filter conditions
Array of filter conditions
fieldstring (Enum)requiredIdentifies the compliance standard field the filter should match. Filters are based on the following keywords:
name: Compliance standard name
id: Compliance standard ID
publisher: Compliance standard publisher
created_by: User who created the compliance standard
insertion_time: When the compliance standard was created
is_custom: Whether the compliance standard is custom
labels: Compliance standard labels
Identifies the compliance standard field the filter should match. Filters are based on the following keywords:
name: Compliance standard nameid: Compliance standard IDpublisher: Compliance standard publishercreated_by: User who created the compliance standardinsertion_time: When the compliance standard was createdis_custom: Whether the compliance standard is customlabels: Compliance standard labels
operatorobject (Enum)requiredIdentifies the comparison operator you want to use for this filter. Valid keywords are:
eq / neq / contains / not_contains:
name, id, publisher, created_by: String
gte / lte / range / relative_timestamp:
- `insertion_time``: Integer in timestamp epoch milliseconds
in:
is_custom: Enum with possible values of yes or no
contains / not_contains:
labels: Array of strings
Identifies the comparison operator you want to use for this filter. Valid keywords are:
eq / neq / contains / not_contains:
name,id,publisher,created_by: String
gte / lte / range / relative_timestamp:
- `insertion_time``: Integer in timestamp epoch milliseconds
in:
is_custom: Enum with possible values ofyesorno
contains / not_contains:
labels: Array of strings
valueobjectrequiredValue that this filter must match. The contents of this field will differ depending on the assessment profile field that you specified for this filter.
Value that this filter must match. The contents of this field will differ depending on the assessment profile field that you specified for this filter.
stringWhen the field value is one of the following, the value is type string: name, id, publisher, created_by
When the field value is one of the following, the value is type string: name, id, publisher, created_by
integerWhen the field value is one of the following, the value is type integer: insertion_time
When the field value is one of the following, the value is type integer: insertion_time
sortobject
fieldstring (Enum)Field to sort by
Field to sort by
"creation_time"keywordstring (Enum)Sort order
Sort order
"asc"search_fromintegerZero-based index of the first standard to return. Use with search_to to page through results. For example, search_from: 0 starts at the first standard; search_from: 50 skips the first 50.
Zero-based index of the first standard to return. Use with search_to to page through results. For example, search_from: 0 starts at the first standard; search_from: 50 skips the first 50.
search_tointegerZero-based index marking the end of the page (exclusive). The response includes standards from search_from up to, but not including, search_to. For example, search_from: 0 and search_to: 50 returns the first 50 standards.
Zero-based index marking the end of the page (exclusive). The response includes standards from search_from up to, but not including, search_to. For example, search_from: 0 and search_to: 50 returns the first 50 standards.
100{
"request_data": {
"search_from": 0,
"search_to": 49
}
}{
"request_data": {
"filters": [
{
"field": "is_custom",
"operator": "in",
"value": [
"yes"
]
},
{
"field": "labels",
"operator": "contains",
"value": "aws"
}
],
"sort": {
"field": "insertion_time",
"keyword": "desc"
},
"search_from": 0,
"search_to": 24
}
}{
"request_data": {
"filters": [
{
"field": "labels",
"operator": "contains",
"value": "security"
},
{
"field": "is_custom",
"operator": "in",
"value": [
"yes"
]
}
]
}
}{
"request_data": {
"filters": [
{
"field": "insertion_time",
"operator": "gte",
"value": 1640995200000
},
{
"field": "insertion_time",
"operator": "lte",
"value": 1672531200000
}
],
"sort": {
"field": "insertion_time",
"keyword": "desc"
}
}
}