> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/xdr-5-api/asset-compliance/control-findings.md).

# Control Findings

REST API for retrieving compliance results for an asset.

## Get asset compliance results

> Retrieve compliance standard and control results for a specific asset ID, with optional filtering, sorting and pagination.\
> \
> Required params:\
> \- \`asset\_id\` (string) - The asset identifier\
> \- \`last\_evaluation\_time\` (integer) - Unix timestamp in milliseconds for the evaluation time\
> \
> \*\*Filtering Support:\*\*\
> \- \*\*String fields\*\* (\`standard\`, \`category\`, \`control\`, \`source\`): \`eq\`, \`neq\`, \`contains\`, \`not\_contains\`\
> \- \*\*Status fields\*\* (\`status\`, \`severity\`): \`eq\`, \`neq\`\
> \- Status valid values: \[\`FAILED\`, \`PASSED\`, \`NOT\_ASSESSED\`]\
> \- Severity valid values: \[\`SEV\_010\_INFO\`, \`SEV\_020\_LOW\`, \`SEV\_030\_MEDIUM\`, \`SEV\_040\_HIGH\`, \`SEV\_050\_CRITICAL\`]\
> \
> \*\*Sorting Support:\*\*\
> \- Available fields: \`standard\`, \`category\`, \`control\`, \`severity\`, \`status\`\
> \- Sort orders: \`asc\`, \`desc\`\
> \- Default: \`standard\` in ascending order\
> \
> \*\*Pagination:\*\* (max number of elements is 100)

```json
{"openapi":"3.0.3","info":{"title":"Get Asset Compliance Results API","version":"1.0.0"},"tags":[{"name":"Control Findings","description":"REST API for retrieving compliance results for an asset."}],"servers":[{"url":"https://api-{fqdn}","variables":{"fqdn":{"default":"cortex.paloaltonetworks.com","description":"fully qualified domain name for Cortex tenant"}}}],"security":[{"XDRAuth":[],"XDRAuthToken":[]}],"components":{"securitySchemes":{"XDRAuth":{"type":"apiKey","in":"header","name":"x-xdr-auth-id","description":"XDR API Key ID for authentication"}},"schemas":{"GetAssetComplianceRequest":{"type":"object","description":"Request payload for retrieving asset compliance data. Supports filtering, sorting, and pagination.","required":["request_data"],"properties":{"request_data":{"type":"object","required":["asset_id","last_evaluation_time"],"properties":{"asset_id":{"type":"string","description":"Asset identifier for which to retrieve control findings"},"last_evaluation_time":{"type":"integer","format":"int64","description":"Unix timestamp in milliseconds for the evaluation time"},"filters":{"type":"array","items":{"$ref":"#/components/schemas/FilterObject"},"description":"Array of filter objects for filtering control findings","default":[]},"sort":{"allOf":[{"$ref":"#/components/schemas/SortObject"}],"description":"Sort configuration (defaults to standard asc)"},"search_from":{"type":"integer","minimum":0,"default":0,"description":"Starting index for pagination"},"search_to":{"type":"integer","minimum":1,"maximum":100,"default":100,"description":"Ending index for pagination"}}}}},"FilterObject":{"type":"object","description":"Filter criteria for querying asset compliance data. Supports filtering by standard, control, severity, status, category, or source.\n\n**Valid filter combinations:**\n\nFor the complete list of supported fields, operators, and values, see [Asset Compliance Filter Fields](https://app.gitbook.com/s/FK89utN7l3ilSek2DmU5/asset-compliance/asset-compliance-papi-tables#asset-compliance-filter-fields).","required":["field","operator","value"],"properties":{"field":{"type":"string","enum":["standard","category","control","severity","status","source"],"description":"Field to filter on"},"operator":{"type":"string","enum":["eq","neq","contains","not_contains"],"description":"Filter operator to apply. Note: `contains` and `not_contains` are only valid for string fields (standard, category, control, source).\n"},"value":{"type":"string","description":"Value to filter by. For severity field, use: `SEV_010_INFO`, `SEV_020_LOW`, `SEV_030_MEDIUM`, `SEV_040_HIGH`, `SEV_050_CRITICAL`. For status field, use: `FAILED`, `PASSED`, `NOT_ASSESSED`.\n"}}},"SortObject":{"type":"object","description":"Sorting criteria for query results. Specify field and direction.","properties":{"field":{"type":"string","enum":["standard","category","control","severity","status"],"description":"Field to sort by","default":"standard"},"keyword":{"type":"string","enum":["asc","desc"],"default":"asc","description":"Sort direction"}}},"AssetComplianceResponse":{"type":"object","description":"Response containing asset compliance data including compliance status, findings, and associated standards.","properties":{"reply":{"type":"object","required":["total_count","result_count","filter_count","assets"],"properties":{"total_count":{"type":"integer","description":"Total number of control findings available"},"result_count":{"type":"integer","description":"Number of control findings returned after filtering and pagination"},"filter_count":{"type":"integer","description":"Number of control findings matching the applied filters"},"assets":{"type":"array","items":{"$ref":"#/components/schemas/ControlFinding"},"description":"Array of control findings for the asset"}}}}},"ControlFinding":{"type":"object","description":"Compliance control finding information","properties":{"STANDARD":{"type":"string","description":"Name of the compliance standard"},"STANDARD_REVISION":{"type":"string","description":"Revision identifier of the compliance standard"},"CATEGORY":{"type":"string","description":"Control category or domain"},"CONTROL_REVISION":{"type":"string","description":"Revision identifier of the specific control"},"CONTROL":{"type":"string","description":"Control identifier and name"},"SEVERITY":{"type":"string","enum":["SEV_010_INFO","SEV_020_LOW","SEV_030_MEDIUM","SEV_040_HIGH","SEV_050_CRITICAL"],"description":"Severity level of the control finding"},"RULE_IDS":{"type":"array","items":{"type":"string"},"description":"Array of rule identifiers associated with this finding"},"LAST_EVALUATION_TIME":{"type":"integer","format":"int64","description":"Unix timestamp of the last evaluation"},"STATUS":{"type":"string","enum":["FAILED","PASSED","NOT_ASSESSED"],"description":"Assessment status of the control"},"SOURCE":{"type":"string","description":"Source of the control assessment"}}},"ErrorResponse":{"type":"object","description":"Standard error response returned when the API request fails.","properties":{"reply":{"type":"object","required":["err_code","err_msg"],"properties":{"err_code":{"type":"integer","description":"Error code"},"err_msg":{"type":"string","description":"Error message describing what went wrong"},"err_extra":{"type":"object","description":"Additional error details"}}}}}},"responses":{"BadRequest":{"description":"Bad request - invalid parameters or request format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Access denied - insufficient permissions","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"InternalServerError":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/public_api/v1/compliance/get_asset":{"post":{"summary":"Get asset compliance results","description":"Retrieve compliance standard and control results for a specific asset ID, with optional filtering, sorting and pagination.\n\nRequired params:\n- `asset_id` (string) - The asset identifier\n- `last_evaluation_time` (integer) - Unix timestamp in milliseconds for the evaluation time\n\n**Filtering Support:**\n- **String fields** (`standard`, `category`, `control`, `source`): `eq`, `neq`, `contains`, `not_contains`\n- **Status fields** (`status`, `severity`): `eq`, `neq`\n- Status valid values: [`FAILED`, `PASSED`, `NOT_ASSESSED`]\n- Severity valid values: [`SEV_010_INFO`, `SEV_020_LOW`, `SEV_030_MEDIUM`, `SEV_040_HIGH`, `SEV_050_CRITICAL`]\n\n**Sorting Support:**\n- Available fields: `standard`, `category`, `control`, `severity`, `status`\n- Sort orders: `asc`, `desc`\n- Default: `standard` in ascending order\n\n**Pagination:** (max number of elements is 100)","operationId":"getAssetCompliance","tags":["Control Findings"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAssetComplianceRequest"}}}},"responses":{"200":{"description":"Successfully retrieved control findings","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssetComplianceResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/xdr-5-api/asset-compliance/control-findings.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
