TotalCloud Release 2.22 API
January 12, 2026
Before understanding the API release highlights, learn more about the API server URL to be used in your API requests by referring to the Know Your Qualys API Server URL section. For this API Release Notes, <qualys_base_url> is mentioned in the sample API requests.
New Get Evaluated Resources and Get Resources API (v2)
Applicable for:
| New or Updated API | New |
| API Endpoint | /rest/v2/aws/evaluations/{accountId}/resources/{controlId} /rest/v2/azure/evaluations/{subscriptionId}/resources/{controlId} /rest/v2/gcp/evaluations/{projectId}/resources/{controlId} /rest/v2/oci/evaluations/{tenantId}/resources/{controlId} /rest/v2/resource/{resourceType}/aws /rest/v2/resource/{resourceType}/azure /rest/v2/resource/{resourceType}/gcp /rest/v2/resource/{resourceType}/oci |
| Method | GET |
| DTD or XSD changes | Not Applicable |
With this release, we are introducing Version 2 (v2) of the Get the resources evaluated for the specified aws account and control id APIs and GET Resources APIs across all supported cloud providers. v2 is designed to efficiently handle large volumes of resource and evaluation data and to provide seamless pagination.
Key Features in v2:
- Support for large evaluation result sets:
The APIs now support retrieving more than 10,000 resource and evaluation records, removing the previous limit on result size. - Pagination using marker:
A new response element,, is included in every API response. Thismarkerallows continuation-based pagination across multiple API requests.marker
How this works:
- You can specify the
/sizeparameter to control the number of records returned in a single response. The maximum allowable size is 1000.pageSize - Each response includes a
value.marker - To retrieve subsequent records, you must pass the
value from the previous response must be passed in the subsequent request.marker - This process continues until no further
is returned, indicating that all evaluation results have been retrieved.marker
Benefits
- Enables reliable access to large datasets.
- Improves performance and stability for high-volume environments.
- Provides a consistent pagination mechanism across all cloud provider evaluation APIs.
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| accountID | Mandatory | String | Specify the unique Id associated with your AWS account. |
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the data for the last 24 hours is included in the response by default. If you need data for a specific date or a date range, use the evaluatedOn token to construct your filter query.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evaluatedOn token here. |
| controlId | Mandatory | String | Specify the control ID of a control whose evaluated resources need to be fetched |
| size | Optional | Integer | The number of records per page to include in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/aws/evaluations/xxxxxxxxxxxx/resources/1?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "James",
"region": "global",
"accountId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-29T13:37:04+0000",
"evidences": [
{
"settingName": "Credential Report Generated Time",
"actualValue": "Thu, 29 Jan 2026 12:17:14 UTC"
},
{
"settingName": "MFA Status",
"actualValue": "Not Enabled"
},
{
"settingName": "Console Password Status",
"actualValue": "Enabled"
}
],
"resourceType": "IAM_USER",
"cid": 1,
"cloudType": "AWS",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2025-02-14T07:28:07+0000",
"lastEvaluated": "2026-01-29T13:37:04+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
},
{
"resourceId": "Administrator",
"region": "global",
"accountId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-29T13:37:04+0000",
"evidences": [
{
"settingName": "Credential Report Generated Time",
"actualValue": "Thu, 29 Jan 2026 12:17:14 UTC"
},
{
"settingName": "MFA Status",
"actualValue": "Not Enabled"
},
{
"settingName": "Console Password Status",
"actualValue": "Enabled"
}
],
"resourceType": "IAM_USER",
"cid": 1,
"cloudType": "AWS",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2025-02-14T07:28:07+0000",
"lastEvaluated": "2026-01-29T13:37:04+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
}
],
"hasNext": true,
"totalHits": 6,
"hasContent": true,
"marker": "WzE3Njk2OTM4MjQwNDcsIjZkMmQ0ZGVhLThiZGUtM2JhMi1iYjFlLWEyYjJhYzYzYzM2MSJd"
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| subscriptionId | Mandatory | String | Specify the unique Id associated with your Azure subscription. |
| filter | Optional | String | Filter the resources list by providing a query using Qualys syntax. If you do not add a date filter, the response includes data for the last 24 hours by default. If you need data for a specific date or date range, form your filter query using evaluatedOn token.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evalutedOn token here. |
| controlId | Mandatory | String | Specify the control ID of a control for which resources evaluated need to be fetched |
| size | Optional | Integer | The number of records per page to be included in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Specify the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/azure/evaluations/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resources/50005?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 1,
"content": [
{
"resourceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"evaluatedOn": "2026-01-29T13:36:56+0000",
"evidences": [
{
"settingName": "System updates",
"actualValue": "On"
}
],
"resourceType": "SECURITY_POLICY",
"cid": 50005,
"cloudType": "AZURE",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "PASS",
"evaluationDates": {
"firstEvaluated": "2025-10-05T23:13:27+0000",
"lastEvaluated": "2026-01-29T13:36:56+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T23:13:27+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": "2025-10-05T23:13:27+0000",
"lastPassed": "2026-01-29T13:36:56+0000",
"firstFailed": null,
"lastFailed": null,
"result": "PASS"
}
}
],
"hasNext": false,
"totalHits": 1,
"hasContent": true,
"marker": null
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| projectId | Mandatory | String | Specify the unique Id associated with your GCP account. |
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the data for the last 24 hours is included in the response by default. If you need data for a specific date or a date range, use the evaluatedOn token to construct your filter query.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evaluatedOn token here. |
| controlId | Mandatory | String | Specify the control ID of a control whose evaluated resources need to be fetched |
| size | Optional | Integer | The number of records per page to include in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/gcp/evaluations/xxxx-xxxxx-xxx/resources/52001?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "xxxx-xxxxx-xxx",
"region": "-",
"projectId": "xxxx-xxxxx-xxx",
"evaluatedOn": "2026-01-29T13:36:35+0000",
"evidences": [
{
"settingName": "Keys",
"actualValue": "[{\"name\":\"projects\/xxxx-xxxxx-xxx\/serviceAccounts\/xxxx-xxxxx-xxx\/keys\/xxxxxxxxxxxxxxxxxxxx\",\"validAfterTime\":\"2024-10-16T09:10:52Z\",\"validBeforeTime\":\"9999-12-31T23:59:59Z\",\"keyAlgorithm\":\"KEY_ALG_RSA_2048\",\"keyOrigin\":\"GOOGLE_PROVIDED\",\"keyType\":\"USER_MANAGED\"}]"
}
],
"resourceType": "SERVICE_ACCOUNT",
"cid": 52001,
"cloudType": "GCP",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2025-10-05T19:46:10+0000",
"lastEvaluated": "2026-01-29T13:36:35+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T19:46:10+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": "2025-10-05T19:46:10+0000",
"lastFailed": "2026-01-29T13:36:35+0000",
"result": "FAIL"
}
},
{
"resourceId": "xxxxxxxxxxxx",
"region": "-",
"projectId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-29T13:36:35+0000",
"evidences": [
{
"settingName": "Keys",
"actualValue": "[{\"name\":\"projects\/qlys-devqa-cdr\/serviceAccounts\/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\/keys\/xxxxxxxxxxxxxxxxxxxxxxxx\",\"validAfterTime\":\"2024-09-11T23:25:43Z\",\"validBeforeTime\":\"9999-12-31T23:59:59Z\",\"keyAlgorithm\":\"KEY_ALG_RSA_2048\",\"keyOrigin\":\"GOOGLE_PROVIDED\",\"keyType\":\"USER_MANAGED\"}]"
}
],
"resourceType": "SERVICE_ACCOUNT",
"cid": 52001,
"cloudType": "GCP",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2025-10-05T19:46:10+0000",
"lastEvaluated": "2026-01-29T13:36:35+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T19:46:10+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": "2025-10-05T19:46:10+0000",
"lastFailed": "2026-01-29T13:36:35+0000",
"result": "FAIL"
}
}
],
"hasNext": true,
"totalHits": 9,
"hasContent": true,
"marker": "WzE3Njk2OTM3OTU5MjEsImJlODM2MmNiLTk2MDMtM2M0Yy1hNGI5LTUwMGQwMTc4ODIxYSJd"
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| tenantId | Mandatory | String | Specify the unique Id associated with your OCI account. |
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the data for the last 24 hours is included in the response by default. If you need data for a specific date or a date range, use the evaluatedOn token to construct your filter query.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evaluatedOn token here. |
| controlId | Mandatory | String | Specify the control ID of a control whose evaluated resources need to be fetched |
| size | Optional | Integer | The number of records per page to include in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/oci/evaluations/xxxxxxxxxxxx/resources/52001?pageNo=0&pageSize=10&filter=cloud.resource.lastStateUpdatedDate%3A%5Bnow-30m%20..%20now%5D' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"content": [
{
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"region": "-",
"tenantId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-29T13:36:36+0000",
"evidences": [
{
"settingName": "Keys",
"actualValue": "[{\"name\":\"projects\/qvsa-dev\/serviceAccounts\/xxxxxxxxxxxxxxxxxxxxxxxx\/keys\/xxxxxxxxxxxxxxxxxxxxxxxx\",\"validAfterTime\":\"2018-10-25T09:00:37Z\",\"validBeforeTime\":\"9999-12-31T23:59:59Z\",\"keyAlgorithm\":\"KEY_ALG_RSA_2048\",\"keyOrigin\":\"GOOGLE_PROVIDED\",\"keyType\":\"USER_MANAGED\"},{\"name\":\"projects\/qvsa-dev\/serviceAccounts\/xxxxxxxxxxxxxxxxxxxxxxxx\/keys\/xxxxxxxxxxxxxxxxxxxxxxxx\",\"validAfterTime\":\"2018-12-11T09:59:51Z\",\"validBeforeTime\":\"9999-12-31T23:59:59Z\",\"keyAlgorithm\":\"KEY_ALG_RSA_2048\",\"keyOrigin\":\"GOOGLE_PROVIDED\",\"keyType\":\"USER_MANAGED\"}]"
}
],
"resourceType": "SERVICE_ACCOUNT",
"result": "PASS_WITH_EXCEPTION",
"evaluationDates": {
"firstEvaluated": "2025-02-06T09:54:24+0000",
"lastEvaluated": "2026-01-29T13:36:36+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
}
],
"pageable": {
"pageNumber": 0,
"pageSize": 10,
"sort": {
"sorted": false,
"empty": true,
"unsorted": true
},
"offset": 0,
"paged": true,
"unpaged": false
},
"totalPages": 1,
"totalElements": 1,
"last": true,
"number": 0,
"size": 10,
"numberOfElements": 1,
"sort": {
"sorted": false,
"empty": true,
"unsorted": true
},
"first": true,
"empty": false
}
AWS: Get AWS Resources (v2)AWS: Get AWS Resources (v2)
| Parameter | Mandatory/Optional | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter resources using a Qualys query. The following search tokens are supported. List of tokens supported for AWS resources |
| pageSize | Optional | Integer | The number of records per page to be included in the response. |
| sort | Optional | Keyword | Sort the results using a Qualys token. Sorting is currently enabled with only one sort token: lastSyncedOn. The allowed values are asc or desc. |
| updated | Optional | String | Use a date range or specific date to define when the resource was last updated. Examples: Show resources updated within certain dates, updated: [2021-01-01 ... 2021-03-01] Show resources updated starting 2018-10-01, ending 1 month ago, updated: [2021-01-01 ... now-1m] Show resources updated starting 2 weeks ago, ending 1 second ago, updated: [now-2w ... now-1s] Show resources updated on specific date, updated: 2021-01-08 |
| resourceType | Mandatory | String | Select the type of resource you want to fetch inventory for. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/resource/EC2_INSTANCE/aws?pageSize=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"region": "us-gov-west-1",
"name": "Qualys Snapshot Scanner",
"cloudType": "AWS",
"createdOn": "2025-10-23T01:18:57+0000",
"created": "2025-10-23T01:18:57.993+00:00",
"remediationEnabled": null,
"cloudAccountId": "399407435577",
"accountAlias": null,
"tags": [
{
"key": "Name",
"value": "Qualys Snapshot Scanner"
},
{
"key": "App",
"value": "rgade-snapshot-scanner"
},
{
"key": "InstancePurpose",
"value": "Scanning"
}
],
"resourceId": "xxxxxxxxxxxx",
"controlsFailed": 0,
"qualysTags": null,
"additionalDetails": null,
"isSnapshotScanEnabled": false,
"failedControlCids": null,
"instanceId": "xxxxxxxxxxxx",
"instanceState": "terminated",
"spotInstanceRequestId": null,
"networkInterfaceAddresses": [],
"privateIpAddress": null,
"secondaryPrivateIpAddress": null,
"elasticIpAddress": null,
"securityGroups": [],
"resourceType": "EC2_INSTANCE",
"instanceType": "t3.medium",
"availabilityZone": "us-gov-west-1a",
"imageId": "xxxxxxxxxxxx",
"launchTime": "2025-10-23T00:29:32+0000",
"vpcId": null,
"subnetId": null,
"publicDnsName": "",
"privateDnsName": "",
"publicIpAddress": null,
"ipAddress": null,
"instanceStatus": null,
"events": null,
"iamInstanceProfile": null,
"vulnerabilities": null,
"criticalityScore": null,
"arsScore": null,
"vulnerabilityStats": null,
"secretStats": null,
"secrets": null,
"hasSecrets": null,
"iamInstanceProfileRoleDetails": null,
"classifications": null,
"privateIpv6Address": null,
"publicIpv6Address": null,
"sev3Sev4Sev5VulnCount": 0,
"updated": "2025-10-23T01:18:57+0000"
},
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"region": "us-gov-west-1",
"name": "Qualys Snapshot Scanner",
"cloudType": "AWS",
"createdOn": "2025-10-23T01:18:58+0000",
"created": "2025-10-23T01:18:58.087+00:00",
"remediationEnabled": null,
"cloudAccountId": "xxxxxxxxxxxx",
"accountAlias": null,
"tags": [
{
"key": "App",
"value": "rgade-snapshot-scanner"
},
{
"key": "Name",
"value": "Qualys Snapshot Scanner"
},
{
"key": "InstancePurpose",
"value": "Scanning"
}
],
"resourceId": "xxxxxxxxxxxx",
"controlsFailed": 0,
"qualysTags": null,
"additionalDetails": null,
"isSnapshotScanEnabled": false,
"failedControlCids": null,
"instanceId": "xxxxxxxxxxxx",
"instanceState": "terminated",
"spotInstanceRequestId": null,
"networkInterfaceAddresses": [],
"privateIpAddress": null,
"secondaryPrivateIpAddress": null,
"elasticIpAddress": null,
"securityGroups": [],
"resourceType": "EC2_INSTANCE",
"instanceType": "t3.2xlarge",
"availabilityZone": "us-gov-west-1a",
"imageId": "xxxxxxxxxxxx",
"launchTime": "2025-10-23T00:29:28+0000",
"vpcId": null,
"subnetId": null,
"publicDnsName": "",
"privateDnsName": "",
"publicIpAddress": null,
"ipAddress": null,
"instanceStatus": null,
"events": null,
"iamInstanceProfile": null,
"vulnerabilities": null,
"criticalityScore": null,
"arsScore": null,
"vulnerabilityStats": null,
"secretStats": null,
"secrets": null,
"hasSecrets": null,
"iamInstanceProfileRoleDetails": null,
"classifications": null,
"privateIpv6Address": null,
"publicIpv6Address": null,
"sev3Sev4Sev5VulnCount": 0,
"updated": "2025-10-23T01:18:58+0000"
}
],
"hasNext": true,
"totalHits": 410,
"hasContent": true,
"marker": "WzE3NjExODIzMzgwODcsIjA1MzRkNDRlLTNkMDQtM2UyNy04OTYyLTU5M2E0NjVlM2JhNyJd"
}
Azure: Get Azure Resources (v2)Azure: Get Azure Resources (v2)
| Parameter | Mandatory/Optional | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter resources using a Qualys query. The following search tokens are supported. List of tokens supported for Microsoft Azure Resources Note: As of TC 2.13, Resources support tags.name token for tags applied to Connector (connector tag) and exception tag (tag applied to resources using Apply Tag API for Tag Exception creation). |
| pageSize | Optional | Integer | The number of records to include per page in the response. |
| sort | Optional | Keyword | Sort the results using a Qualys token. Sorting is currently enabled with only one sort token: lastSyncedOn. The allowed values are asc or desc. |
| updated | Optional | String | Use a date range or a specific date to define when the resource was last updated. Examples: Show resources updated within certain dates, updated: [2021-01-01 ... 2021-03-01] Show resources updated starting 2018-10-01, ending 1 month ago, updated: [2021-01-01 ... now-1m] Show resources updated starting 2 weeks ago, ending 1 second ago, updated: [now-2w ... now-1s] Show resources updated on specific date, updated: 2021-01-08 |
| resourceType | Mandatory | String | Select the type of resource you want to fetch inventory for. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/resource/VIRTUAL_MACHINE/azure?pageSize=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"cloudType": "AZURE",
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"subscriptionName": null,
"resourceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"resourceGroupName": "CDR-QA-ResourceGroup",
"scanUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "QualysCDRVM-hp-qa2-euwst",
"type": "Microsoft.Compute/virtualMachines",
"region": "westeurope",
"tags": [
{
"name": "CreatedBy",
"value": "Qualys"
}
],
"remediationEnabled": null,
"additionalDetails": null,
"qualysTags": null,
"isSnapshotScanEnabled": false,
"controlsFailed": 0,
"primaryPublicIPAddress": null,
"primaryPublicIPAddressId": null,
"primaryPrivateIPAddress": "10.13.10.4",
"privateIpv6Address": null,
"publicIpv6Address": null,
"availabilitySetId": "",
"provisioningState": "DELETED",
"licenseType": null,
"computerName": "QualysCDRVM-hp-qa2-euwst",
"size": "Standard_D8s_v3",
"osType": "Linux",
"criticalityScore": null,
"arsScore": null,
"statuses": [
{
"code": "PowerState/deleted",
"displayStatus": "Deleted",
"level": "info",
"message": null,
"time": "2026-01-12T11:47:43+0000"
}
],
"created": "2025-09-22T23:11:30+0000",
"updated": "2026-01-12T11:47:43+0000",
"networkSecurityGroupId": "",
"imageData": [
{
"id": null,
"offer": null,
"publisher": null,
"sku": null,
"version": null
}
]
},
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"cloudType": "AZURE",
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"subscriptionId": "5xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"subscriptionName": null,
"resourceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"resourceGroupName": "AzureBlueHexagon",
"scanUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "bh-acr-scanner-02",
"type": "Microsoft.Compute/virtualMachines",
"region": "westus2",
"tags": [],
"remediationEnabled": null,
"additionalDetails": null,
"qualysTags": null,
"isSnapshotScanEnabled": false,
"controlsFailed": 0,
"primaryPublicIPAddress": null,
"primaryPublicIPAddressId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/AzureBlueHexagon/providers/Microsoft.Network/publicIPAddresses/bh-acr-scanner-02-ip",
"primaryPrivateIPAddress": "10.1.0.14",
"privateIpv6Address": null,
"publicIpv6Address": null,
"availabilitySetId": "",
"provisioningState": null,
"licenseType": null,
"computerName": "bh-acr-scanner-02",
"size": "Standard_DS1_v2",
"osType": "Linux",
"criticalityScore": null,
"arsScore": null,
"statuses": [
{
"code": "ProvisioningState/succeeded",
"displayStatus": "Provisioning succeeded",
"level": "INFO",
"message": null,
"time": "2024-02-29T22:07:32+0000"
},
{
"code": "PowerState/deallocated",
"displayStatus": "VM deallocated",
"level": "INFO",
"message": null,
"time": null
}
],
"created": "2025-03-12T09:20:23+0000",
"updated": "2026-01-27T10:12:13+0000",
"networkSecurityGroupId": "bh-acr-scanner-02-nsg",
"imageData": null
}
],
"hasNext": true,
"totalHits": 67,
"hasContent": true,
"marker": "WzE3Njk1MDg3MzMwODEsIjNlNGFlNzI4LWQ5YzAtM2UwNS04Y2IzLTMwYjZmYmVhYzk0YiJd"
}
GCP: Get GCP Resources (v2)GCP: Get GCP Resources (v2)
| Parameter | Mandatory/Optional | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter resources using a Qualys query. The following search tokens are supported. List of tokens supported for GCP Resources |
| pageSize | Optional | Integer | The number of records per page to be included in the response. |
| sort | Optional | Keyword | Sort the results using a Qualys token. Sorting is currently enabled with only one sort token: lastSyncedOn. The allowed values are asc or desc. |
| updated | Optional | String | Use a date range or a specific date to define when the resource was last updated. Examples: Show resources updated within certain dates, updated: [2021-01-01 ... 2021-03-01] Show resources updated starting 2018-10-01, ending 1 month ago, updated: [2021-01-01 ... now-1m] Show resources updated starting 2 weeks ago, ending 1 second ago, updated: [now-2w ... now-1s] Show resources updated on specific date, updated: 2021-01-08 |
| resourceType | Mandatory | String | Select the type of resource you want to fetch the inventory for |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/resource/VM_INSTANCE/gcp?pageSize=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"cloudType": "GCP",
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"projectId": "xxxxxxxxxxxx",
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"scanUuid": "axxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "qualys-cdr-app-m543",
"type": null,
"region": "us-central1",
"tags": null,
"controlsFailed": 0,
"qualysTags": null,
"projectNumber": "453744727472",
"zone": "us-central1-a",
"kind": "compute#instance",
"machineType": "n1-standard-8",
"description": null,
"externalIpAddress": null,
"privateIpAddress": "xx.xx.xx.xx",
"privateIpv6Address": null,
"publicIpv6Address": null,
"labels": [],
"networkInterfaces": [
{
"accessConfigs": null,
"kind": "compute#networkInterface",
"name": "nic0",
"network": "tc-qa-cdr-vpc",
"networkIP": "xx.xx.xx.xx",
"subnetwork": "tc-qa-cdr-sub1",
"fingerprint": "0EETNWV5BiM="
}
],
"status": "TERMINATED",
"created": "2025-10-21T20:01:20+0000",
"updated": "2025-10-22T20:02:08+0000",
"imageData": null
},
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"cloudType": "GCP",
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"projectId": "xxxxxxxxxxxx",
"resourceId": "xxxxxxxxxxxx",
"scanUuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "gke-kubernetes-qvsa-dev--default-pool-ec4788ac-9rsm",
"type": null,
"region": "us-central1",
"tags": null,
"controlsFailed": 0,
"qualysTags": null,
"projectNumber": "1035365309337",
"zone": "us-central1-a",
"kind": "compute#instance",
"machineType": "n1-standard-1",
"description": null,
"externalIpAddress": "xxx.xxx.xx.xx",
"privateIpAddress": "xx.xxx.x.xx",
"privateIpv6Address": null,
"publicIpv6Address": null,
"labels": [
{
"name": "goog-gke-cluster-id-base32",
"value": "cs747bx4ra2vdxumnk2dqlcleewe5nrpvtzpyxpjsb66yo67xiaq"
},
{
"name": "goog-gke-cost-management",
"value": ""
},
{
"name": "goog-gke-node",
"value": ""
},
{
"name": "goog-k8s-cluster-location",
"value": "us-central1-a"
},
{
"name": "goog-k8s-cluster-name",
"value": "kubernetes-qvsa-dev-rw"
},
{
"name": "goog-k8s-node-pool-name",
"value": "default-pool"
}
],
"networkInterfaces": [
{
"accessConfigs": {
"kind": null,
"name": null,
"type": null,
"networkTier": null
},
"kind": "compute#networkInterface",
"name": "nic0",
"network": "default",
"networkIP": "xx.xxx.x.xx",
"subnetwork": "",
"fingerprint": "-gWYJXBBZLU="
}
],
"status": "TERMINATED",
"created": "2025-10-15T19:54:59+0000",
"updated": "2025-10-22T20:02:12+0000",
"imageData": null
}
],
"hasNext": true,
"totalHits": 98,
"hasContent": true,
"marker": "WzE3NjExNjMzMzIwMzUsImM4MWRhMjlkLWEwYjktMzNjZS1hOTE4LTI3NzgxMTI1YjExYSJd"
}
OCI: Get OCI Resources (v2)OCI: Get OCI Resources (v2)
| Parameter | Mandatory/Optional | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter the resources by providing a query using Qualys syntax. The following search tokens are supported. List of tokens supported for OCI resources |
| pageSize | Optional | Integer | The number of records to be included per page in the response. |
| sort | Optional | String | The sort field order for the response objects. The default sorting order is desc for any field sorting. |
| resourceType | Mandatory | String | Choose the type of resource for which you want to retrieve inventory. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v2/resource/INSTANCE/oci?pageSize=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"totalHits": 741,
"content": [
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"updated": 1769689068636,
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"region": "mx-queretaro-1",
"name": "xxxxxxxxxxxx",
"ociTags": [
{
"nameSpace": "Oracle-Tags",
"key": "CreatedBy",
"value": "oktasso_qualys_oraclecengg1/ydiveka",
"type": "DEFINED"
},
{
"nameSpace": "Oracle-Tags",
"key": "CreatedOn",
"value": "2024-12-10T13:12:06.966Z",
"type": "DEFINED"
}
],
"cloudType": "OCI",
"ociId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"tenantId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"tenancyName": "oraclecengg1",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"scanUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"scanId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tagIds": null,
"lifecycleState": "Running",
"connectorSource": "CONNECTORS",
"lastUpdated": null,
"connectorUuid": null,
"controlsFailed": 0,
"qualysTags": null,
"cloudAccountId": "xxxxxxxxxxxx",
"compartment": {
"id": "ocid1.compartment.oc1..aaaaaaaa66agdkvokvdb3tqrd6k545i3onplmxxxxxxxxxxxxxxxxxx",
"ociId": null,
"name": "Yogesh_Folder_Temp"
},
"secureBootEnabled": false,
"imageId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"faultDomain": "FAULT-DOMAIN-2",
"shape": "VM.Standard.A1.Flex",
"availabilityDomain": "Lhkx:MX-QUERETARO-1-AD-1",
"vnicDto": [
{
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"displayName": "instance-20241210-1841",
"macAddress": "02:00:17:00:F4:EA",
"privateIp": "10.0.0.57",
"publicIp": "xxx.xx.xxx.xxx",
"vlanId": null,
"hostNameLabel": "instance-20241210-1841",
"primary": true,
"subnetDto": {
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"displayName": "subnet-20241210-1841",
"availabilityDomain": null,
"cidrBlock": "10.0.0.0/24",
"dnsLabel": "subnet12101841",
"virtualRouterIp": "xx.x.x.x",
"virtualRouterMac": "00:00:17:40:62:46"
},
"ipv6Addresses": null
}
],
"launchTime": null,
"creationDate": 1733836327576,
"firstDiscoveredOn": 1769689068950,
"pvEncryptionInTransitEnabled": false
},
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"updated": 1769689068828,
"connectorUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"region": "mx-monterrey-1",
"name": "instance-20241210-1844",
"ociTags": [
{
"nameSpace": "Oracle-Tags",
"key": "CreatedOn",
"value": "2024-12-10T13:15:28.653Z",
"type": "DEFINED"
},
{
"nameSpace": "Oracle-Tags",
"key": "CreatedBy",
"value": "oktasso_qualys_oraclecengg1/[email protected]",
"type": "DEFINED"
}
],
"cloudType": "OCI",
"ociId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"tenantId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"tenancyName": "oraclecengg1",
"customers": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"customerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"scanUuids": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"scanId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tagIds": null,
"lifecycleState": "Running",
"connectorSource": "CONNECTORS",
"lastUpdated": null,
"connectorUuid": null,
"controlsFailed": 0,
"qualysTags": null,
"cloudAccountId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"compartment": {
"id": "ocid1.compartment.oc1..aaaaaaaa66agdkvokvdb3tqrd6k545i3onplmimcat3b5vsvohtuc26e2hlq",
"ociId": null,
"name": "Yogesh_Folder_Temp"
},
"secureBootEnabled": false,
"imageId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"faultDomain": "FAULT-DOMAIN-2",
"shape": "VM.Standard.A1.Flex",
"availabilityDomain": "Lhkx:MX-MONTERREY-1-AD-1",
"vnicDto": [
{
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"displayName": "instance-20241210-1844",
"macAddress": "02:00:17:00:65:EA",
"privateIp": "xx.x.x.x",
"publicIp": "xx.xxx.xxx.xx",
"vlanId": null,
"hostNameLabel": "instance-20241210-1844",
"primary": true,
"subnetDto": {
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"displayName": "subnet-20241210-1844",
"availabilityDomain": null,
"cidrBlock": "10.0.0.0/24",
"dnsLabel": "subnet12101845",
"virtualRouterIp": "xx.x.x.x",
"virtualRouterMac": "00:00:17:EA:1D:D7"
},
"ipv6Addresses": null
}
],
"launchTime": null,
"creationDate": 1733836529028,
"firstDiscoveredOn": 1769689069133,
"pvEncryptionInTransitEnabled": false
}
],
"hasContent": true,
"hasNext": true,
"marker": "WzE3Njk2ODkwNjg4MjgsImVhNzA1Y2M2LTEwMTMtMzUwMy1hNGFjLTgzZTVkMDJiMjFlNiJd"
}
New Get all evaluated resources across accounts and controls
Applicable for:
| New or Updated API | New |
| API Endpoint | /rest/v1/aws/evaluations/resources /rest/v1/azure/evaluations/resources /rest/v1/gcp/evaluations/resources /rest/v1/oci/evaluations/resources |
| Method | GET |
| DTD or XSD changes | Not Applicable |
We have introduced a new enhancement to the ETM CNAPP connectors API that enables retrieving resource evaluations using flexible, filter-based query parameters. This improvement removes the previous requirement to explicitly provide both accountId and cid in the endpoint path.
With this update, you can now retrieve evaluations across clouds using a single endpoint per cloud and apply optional filters, such as resourceType, cid, or to tailor the results to your needs.accountId,
Benefits
- No longer required to embed both
accountIdandcidin the URL path. - Easier to query broad or specific slices of evaluation data.
- Supports optional filters that can be combined as needed.
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the data for the last 24 hours is included in the response by default. If you need data for a specific date or a date range, use the evaluatedOn token to construct your filter query.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evaluatedOn token here. |
| size | Optional | Integer | The number of records per page to include in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Use the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v1/aws/evaluations/resources?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"region": "ca-central-1",
"accountId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-27T11:54:02+0000",
"evidences": [
{
"settingName": "Publicly Accessible via ACL",
"actualValue": "NO"
},
{
"settingName": "ACL",
"actualValue": "[{\"grantee\":\"7a18e0e51809c114ad1d47ce7f2481c13b8927c709b1674fe23deb714948766e\",\"permission\":\"FULLCONTROL\"}]"
}
],
"resourceType": "BUCKET",
"cid": 45,
"cloudType": "AWS",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "PASS",
"evaluationDates": {
"firstEvaluated": "2025-02-14T07:30:19+0000",
"lastEvaluated": "2026-01-27T11:54:02+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
},
{
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"region": "ca-central-1",
"accountId": "xxxxxxxxxxxx",
"evaluatedOn": "2026-01-27T11:54:02+0000",
"evidences": [
{
"settingName": "Publicly Accessible via Policy",
"actualValue": "False"
},
{
"settingName": "Bucket Policy",
"actualValue": null
},
{
"settingName": "Bucket Policy : Error Message",
"actualValue": "The bucket policy does not exist"
}
],
"resourceType": "BUCKET",
"cid": 46,
"cloudType": "AWS",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "PASS",
"evaluationDates": {
"firstEvaluated": "2025-02-14T07:30:19+0000",
"lastEvaluated": "2026-01-27T11:54:02+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
}
],
"hasNext": true,
"totalHits": 5931,
"hasContent": true,
"marker": "WzE3Njk1MTQ4NDI1MzQsIjhiNTM0Yjk3LTdiYjEtM2QxNC04ODQxLWY4N2Y2YzlmZTJkYSJd"
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the response includes data for the last 24 hours by default. If you need data for a specific date or date range, form your filter query using evaluatedOn token.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evalutedOn token here. |
| pageSize | Optional | Integer | The number of records per page to be included in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Specify the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v1/azure/evaluations/resources?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/qflowlog-rg-3vszlwdh/providers/Microsoft.KeyVault/vaults/qflowlog-kv-3vszlwdh/keys/qflowlog-kv-key-3vszlwdh",
"evaluatedOn": "2026-01-27T10:11:17+0000",
"evidences": [
{
"settingName": "Type",
"actualValue": "Microsoft.KeyVault/vaults/keys"
},
{
"settingName": "Key Name",
"actualValue": "qflowlog-kv-key-3vszlwdh"
},
{
"settingName": "Id",
"actualValue": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/qflowlog-rg-3vszlwdh/providers/Microsoft.KeyVault/vaults/qflowlog-kv-3vszlwdh/keys/qflowlog-kv-key-3vszlwdh"
},
{
"settingName": "Key Vault Name",
"actualValue": "qflowlog-kv-3vszlwdh"
},
{
"settingName": "Location",
"actualValue": "eastus"
},
{
"settingName": "Expiration Date (GMT)",
"actualValue": "2027-09-24T10:14:55+0000"
}
],
"resourceType": "KEY",
"cid": 50442,
"cloudType": "AZURE",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "PASS",
"evaluationDates": {
"firstEvaluated": "2025-10-05T23:14:25+0000",
"lastEvaluated": "2026-01-27T10:11:17+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T23:14:25+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": "2025-10-05T23:14:25+0000",
"lastPassed": "2026-01-27T10:11:17+0000",
"firstFailed": null,
"lastFailed": null,
"result": "PASS"
}
},
{
"resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/fl-dev-rg-9rm6200f/providers/Microsoft.Storage/storageAccounts/fldev9rm6200f",
"evaluatedOn": "2026-01-27T10:11:14+0000",
"evidences": [
{
"settingName": "Storage Account Name",
"actualValue": "fldev9rm6200f"
},
{
"settingName": "Storage Account ID",
"actualValue": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/fl-dev-rg-9rm6200f/providers/Microsoft.Storage/storageAccounts/fldev9rm6200f"
},
{
"settingName": "Lock ID",
"actualValue": "-"
},
{
"settingName": "Lock name",
"actualValue": "-"
}
],
"resourceType": "STORAGE_ACCOUNT",
"cid": 50551,
"cloudType": "AZURE",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2026-01-08T11:44:41+0000",
"lastEvaluated": "2026-01-27T10:11:14+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2026-01-08T11:44:41+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": "2026-01-08T11:44:41+0000",
"lastFailed": "2026-01-27T10:11:14+0000",
"result": "FAIL"
}
}
],
"hasNext": true,
"totalHits": 5380,
"hasContent": true,
"marker": "WzE3Njk1MDg2NzQ0MzksImUwMGY5N2QyLTk5NjMtMzQ0Ni1hZjI3LTA0M2MyZGZjZDUyZSJd"
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the response includes data for the last 24 hours by default. If you need data for a specific date or date range, form your filter query using evaluatedOn token.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evalutedOn token here. |
| pageSize | Optional | Integer | The number of records to include per page in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Specify the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v1/gcp/evaluations/resources?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "xxxxxxxxxxxx",
"region": "-",
"evaluatedOn": "2026-01-27T15:49:57+0000",
"evidences": [
{
"settingName": "Project has users with IAM Service Account roles ",
"actualValue": " No"
}
],
"resourceType": "PROJECT_IAM",
"cid": 52179,
"cloudType": "GCP",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "PASS",
"evaluationDates": {
"firstEvaluated": "2025-10-05T19:46:11+0000",
"lastEvaluated": "2026-01-27T15:49:57+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T19:46:11+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": "2025-10-05T19:46:11+0000",
"lastPassed": "2026-01-27T15:49:57+0000",
"firstFailed": null,
"lastFailed": null,
"result": "PASS"
}
},
{
"resourceId": "xxxxxxxxxxxx",
"region": "-",
"evaluatedOn": "2026-01-27T15:49:56+0000",
"evidences": [
{
"settingName": "Roles impersonate or manage Service Accounts are used at project level ",
"actualValue": " Yes"
},
{
"settingName": "roles/editor",
"actualValue": "[\"serviceAccount:xxxxxxxxxxxx@developer.gserviceaccount.com\",\"serviceAccount:453744727472@cloudservices.gserviceaccount.com\",\"serviceAccount:cdr-usr@qlys-devqa-cdr.iam.gserviceaccount.com\",\"serviceAccount:xxxxxxxxxxxx@appspot.gserviceaccount.com\",\"user:xxxxx@qxxxxx.com\"]"
},
{
"settingName": "roles/iam.serviceAccountAdmin",
"actualValue": "[\"user:xxxxx@qxxxxx\"]"
},
{
"settingName": "roles/owner",
"actualValue": "[\"user:xxxxx@qxxxxx\"]"
},
{
"settingName": "roles/iam.serviceAccountUser",
"actualValue": "[\"serviceAccount:453744727472@cloudbuild.gserviceaccount.com\"]"
},
{
"settingName": "roles/dataproc.serviceAgent",
"actualValue": "[\"serviceAccount:service-453744727472@dataproc-accounts.iam.gserviceaccount.com\"]"
}
],
"resourceType": "PROJECT_IAM",
"cid": 52138,
"cloudType": "GCP",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2025-10-05T19:46:11+0000",
"lastEvaluated": "2026-01-27T15:49:56+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": "2025-10-05T19:46:11+0000",
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": "2025-10-05T19:46:11+0000",
"lastFailed": "2026-01-27T15:49:56+0000",
"result": "FAIL"
}
}
],
"hasNext": true,
"totalHits": 2379,
"hasContent": true,
"marker": "WzE3Njk1Mjg5OTY5NjUsImNmMTljMjVlLTI0MjctMzc5ZC04MTBiLWRjODFhNDBlNGQ4MiJd"
}
| Parameter | Mandatory | Data Type | Description |
|---|---|---|---|
| filter | Optional | String | Filter the resources list using a Qualys query. If you do not add a date filter, the response includes data for the last 24 hours by default. If you need data for a specific date or date range, form your filter query using evaluatedOn token.Examples: Show resources discovered within certain dates evaluatedOn: [2019-01-01 ... 2019-03-01] Learn more about the evalutedOn token here. |
| pageSize | Optional | Integer | The number of records per page to be included in the response. |
| marker | Optional (for first API call) Mandatory (for subsequent API calls) |
Integer | Specify the marker value from the previous response to retrieve the next set of evaluation results. |
API request
curl --location '<qualys_gateway>/cloudview-api/rest/v1/oci/evaluations/resources?size=2' \
--header 'accept: */*' \
--header 'Authorization: Bearer <JWT_token>
Response (JSON)
{
"currentPageSize": 2,
"content": [
{
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"region": "ap-mumbai-1",
"evaluatedOn": "2026-01-29T12:26:40+0000",
"evidences": [
{
"settingName": "Resource Name",
"actualValue": "terraform-oci-instance-fail-103"
},
{
"settingName": "Instance OCID",
"actualValue": "xxxxxxxxxxxxxxxxxxxxxxxx"
},
{
"settingName": "Public IPs",
"actualValue": "[129.154.231.224]"
},
{
"settingName": "Private IPs",
"actualValue": "[10.0.0.9]"
}
],
"resourceType": "INSTANCE",
"cid": 40090,
"cloudType": "OCI",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2026-01-29T12:26:40+0000",
"lastEvaluated": "2026-01-29T12:26:40+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
},
{
"resourceId": "xxxxxxxxxxxxxxxxxxxxxxxx",
"region": "ap-mumbai-1",
"evaluatedOn": "2026-01-29T12:26:40+0000",
"evidences": [
{
"settingName": "Resource Name",
"actualValue": "terraform-oci-instance-pass-56"
},
{
"settingName": "Instance OCID",
"actualValue": "xxxxxxxxxxxxxxxxxxxxxxxx"
},
{
"settingName": "Public IPs",
"actualValue": "[xxx.xx.xxx.xxx]"
},
{
"settingName": "Private IPs",
"actualValue": "[xx.x.x.xx]"
}
],
"resourceType": "INSTANCE",
"cid": 40090,
"cloudType": "OCI",
"connectorId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"result": "FAIL",
"evaluationDates": {
"firstEvaluated": "2026-01-29T12:26:43+0000",
"lastEvaluated": "2026-01-29T12:26:43+0000",
"dateReopen": null,
"dateFixed": null,
"sinceLastCurrentState": null,
"prevResult": null,
"sincePrevState": null,
"firstPassed": null,
"lastPassed": null,
"firstFailed": null,
"lastFailed": null,
"result": null
}
}
],
"hasNext": true,
"totalHits": 11459,
"hasContent": true,
"marker": "WzE3Njk2ODk2MDA0MzIsIjE5NDVmYjA2LTk5YmEtM2FlZC1iZTBjLWY4NzkxYzZiMjcwMyJd"
}