Cloud Agent Application Release 2.7 API

April 01, 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. In these API Release Notes, <qualys_base_url> is mentioned in the sample API requests. Replace this placeholder value with the appropriate Qualys Gateway URLs.

New Features in Cloud Agent Configuration Profile

We have introduced a few new features in Cloud Agent configuration profile.

  • Enable Windows Subsystem Linux (WSL) Detections
  • Peer-to-Peer Patch Distribution
  • Prevent Scanning During Group Policy Execution

To learn more about these features, refer to Cloud Agent Application 2.7 Release Notes. To accommodate these new changes, we have updated the following Configuration Profile APIs.

Updated API: Create Configuration Profile API

New or Updated API Updated
API Endpoint /caui/v1/config-profiles
Method POST
DTD or XSD changes NA

Input ParametersInput Parameters

We are introducing the following new input parameters to support these features with the Create Configuration Profile API.

Input Parameter Mandatory/Optional Data Type Description
enableWSLCheck Optional Boolean Use this parameter to enable or disable the WSL detections.
Valid values: true|false
p2pConfigSetting: "enabled" Optional Boolean Use this parameter to enable or disable the peer-to-peer patch distribution.
Valid values: true|false
minCacheSizeGB Optional Integer Use this parameter to specify the minimum storage space available for storing the downloaded patch artifacts.
Default value: 10 GB
Range: 10-100 GB
maxCacheSizeGB Optional Integer Use this parameter to specify the maximum storage space available for storing the downloaded patch artifacts.
Default value: 40 GB
Range: 10-100 GB
minRetentionDays Optional Integer Use this parameter to specify the mimimum time to store the downloaded patch artifacts.
Default value: 2 days
Range: 2-30 days
maxRetentionDays Optional Integer Use this parameter to specify the maximum time to store the downloaded patch artifacts.
Default value: 10 days
Range: 2-30 days
transportPort Optional Integer Use this parameter to specify the transport port to share the downloaded patch artifacts.
adminPort Optional Integer Use this parameter to specify the admin port to share the downloaded patch artifacts.
isVmGroupPolicyDelayEnabled Optional Boolean Use this parameter to prevent scanning during group policy execution. If set to true, the configured delay is added for VM scans during group policy execution.
Valid values: true|false
vmGroupPolicyDelayTime Optional Integer Use this parameter to specify the scan delay in minutes for VM scans during group policy execution.
Default value: 5 minutes
Range: 5-60 minutes
isPcGroupPolicyDelayEnabled Optional Boolean Use this parameter to prevent scanning during group policy execution. If set to true, the configured delay is added for PA scans during group policy execution.
Valid values: true|false
pcGroupPolicyDelayTime Optional Integer Use this parameter to specify the scan delay in minutes for PA scans during group policy execution.
Default value: 5 minutes
Range: 5-60 minutes

Sample: Create Configuration ProfileSample: Create Configuration Profile

The following API sample demonstrate using Create Configuration Profile API to create a new configuration profile.

API Request

curl --location '<qualys_base_url>/caui/v1/config-profiles' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <JWT Token>' 

API Request Body

--data '{
    "basicDetails": {
        "profileName": "Combo5",
        "defaultProfSubscription": false,
        "suspendDataCollection": false,
        "inMemorySQLite": false,
        "enableQgs": false,
        "preventAutoUpdate": false,
        "enableWSLCheck": false,
        "spf": {
            "spfEnabled": false
        }
    },
    "assignCloudAgent": {
        "includedHosts": []
    },
    "scanConfiguration": {
        "vm": {
            "dataCollectionInterval": 240,
            "scanDelay": 0,
            "scanRandomize": 0,
            "scanOnStartup": false,
            "enableRemoteDetections": true,
            "isVmGroupPolicyDelayEnabled": true,
            "vmGroupPolicyDelayTime": 30
  }
            "pc": {
                "dataCollectionInterval": 720,
                "scanDelay": 0,
                "scanRandomize": 0,
"isPcGroupPolicyDelayEnabled": true,
            "pcGroupPolicyDelayTime": 35
            },             "sca": {                 "dataCollectionInterval": 2160             },             "deepscan": {                 "dataCollectionInterval": 10080,                 "scanDelay": 0,                 "scanRandomize": 0,                 "scanTimeOut": 1440,                 "maxCpuUsage": 30,                 "includedDirectoriesForWindows": "C:\\",                 "excludedDirectoriesForWindows": "C:\\Windows,C:\\System Volume Information,
C:\\$RECYCLE.BIN,C:\\hiberfil.sys,
C:\\pagefile.sys,C:\\swapfile.sys",                 "winIncludeAllDir": false,                 "includedDirectoriesForLinux": "/",                 "excludedDirectoriesForLinux": "/proc*,/var/log*,/var/spool*,
/etc*,/usr/bin*,/usr/sbin*,
/usr/lib*,/usr/lib64*,/boot*,
/sys*,/srv*,/media*,/mnt",                 "linuxIncludeAllDir": false,                 "isDeepScanEnabled": false             }         },         "applicationConfiguration": {             "pm": {                 "cacheSize": 2048,                 "pmEnabled": true,                 "isCacheSizeUnlimited": false,                 "enableCpuThrottle": false             },             "fim": {                 "maxEventLogSize": 1024,                 "payloadThresholdTime": 300,                 "maxDiskUsage": 300,                 "dataCollectionInterval": 360,                 "fimEnabled": false             },             "edr": {                 "maxEventLogSize": 2048,                 "payloadThresholdTime": 300,                 "maxDiskUsage": 1024,                 "edrEnabled": true             },             "epp": {                 "eppEnabled": false,                 "thirdPartyRemovalEnabled": true             },             "sac": {                 "sacEnabled": false             },             "xdr": {                 "xdrEnabled": false             }         },         "agentScanMerge": {             "enableAgentScanMerge": true,             "bindAll": false,             "ports": "10001,10002,10003,10004,10005",             "ipv4Enabled": false,             "ipv6Enabled": true         },         "performance": {             "isCustomized": false,             "performanceBasedOn": "LOW",             "customizedSettings": {                 "agentStatusInterval": 900,                 "deltaUploadInterval": 60,                 "chunkSizeForFile": 1024,                 "upgradeReattemptInterval": 64800,                 "loggingLevelForAgent": "VERBOSE",                 "priorityStatusUploadInterval": 300,                 "cpuLimit": 2,                 "cpuThrottle": 20             },             "securitySettings": {                 "vmScanMode": "AGENTUSER"             }         },            "p2pConfigSetting": {                 "enabled": true,                 "minCacheSizeGB": 99,                 "maxCacheSizeGB": 100,                 "minRetentionDays": 10,                 "maxRetentionDays": 30,                 "transportPort": 4002,                 "adminPort": 5002             }     }'

API Response

{
    "id": 1234567,
    "customerId": 1122334,
    "name": "Combo5",
    "isDefault": 1,
    "createdDate": "2024-06-06 14:50:43.0",
    "updatedDate": "2024-06-06 14:50:44.0",
    "priority": 783,
    "createdByUsername": "qualys_ab12",
    "createdByFirstName": "Patrick",
    "createdByLastName": "Slimmer",
    "updatedByUsername": "qualys_ab12",
    "updatedByFirstName": "Patrick",
    "updatedByLastName": "Slimmer"
}

Updated API: Update Configuration Profile API

New or Updated API Updated
API Endpoint /caui/v1/config-profiles
Method PUT
DTD or XSD changes NA

Input ParametersInput Parameters

The following table lists the input parameters for updating a configuration profile.

Input Parameter Mandatory/Optional Data Type Description
enableWSLCheck Optional Boolean Use this parameter to enable or disable the WSL detections.
Valid values: true|false
p2pConfigSetting: "enabled" Optional Boolean Use this parameter to enable or disable the peer-to-peer patch distribution.
Valid values: true|false
minCacheSizeGB Optional Integer Use this parameter to specify the minimum storage space available for storing the downloaded patch artifacts.
Default value: 10 GB
Range: 10-100 GB
maxCacheSizeGB Optional Integer Use this parameter to specify the maximum storage space available for storing the downloaded patch artifacts.
Default value: 40 GB
Range: 10-100 GB
minRetentionDays Optional Integer Use this parameter to specify the mimimum time to store the downloaded patch artifacts.
Default value: 2 days
Range: 2-30 days
maxRetentionDays Optional Integer Use this parameter to specify the maximum time to store the downloaded patch artifacts.
Default value: 10 days
Range: 2-30 days
transportPort Optional Integer Use this parameter to specify the transport port to share the downloaded patch artifacts.
adminPort Optional Integer Use this parameter to specify the admin port to share the downloaded patch artifacts.
isVmGroupPolicyDelayEnabled Optional Boolean Use this parameter to prevent scanning during group policy execution. If set to true, the configured delay is added for VM scans during group policy execution.
Valid values: true|false
vmGroupPolicyDelayTime Optional Integer Use this parameter to specify the scan delay in minutes for VM scans during group policy execution.
Default value: 5 minutes
Range: 5-60 minutes
isPcGroupPolicyDelayEnabled Optional Boolean Use this parameter to prevent scanning during group policy execution. If set to true, the configured delay is added for Policy Audit (PA) scans during group policy execution.
Valid values: true|false
pcGroupPolicyDelayTime Optional Integer Use this parameter to specify the scan delay in minutes for Policy Audit (PA) scans during group policy execution.
Default value: 5 minutes
Range: 5-60 minutes

Sample: Update Configuration ProfileSample: Update Configuration Profile

The following sample demonstrates using Update Configuration Profile API.

API Request

      curl --location --request PUT '
      <qualys_base_url>/caui/v1/config-profiles' \
      --header 'Content-Type: application/json' \
      --header 'Authorization: Bearer <JWT_TOKEN>' \

API Request Body

--data '{
    "basicDetails": {
        "profileName": "Combo5",
        "defaultProfSubscription": false,
        "suspendDataCollection": false,
        "inMemorySQLite": false,
        "enableQgs": false,
        "preventAutoUpdate": false,
        "enableWSLCheck": false,
        "spf": {
            "spfEnabled": false
        }
    },
    "assignCloudAgent": {
        "includedHosts": []
    },
    "scanConfiguration": {
        "vm": {
            "dataCollectionInterval": 240,
            "scanDelay": 0,
            "scanRandomize": 0,
            "scanOnStartup": false,
            "enableRemoteDetections": true,
            "isVmGroupPolicyDelayEnabled": true,
            "vmGroupPolicyDelayTime": 30
           }
            "pc": {
                "dataCollectionInterval": 720,
                "scanDelay": 0,
                "scanRandomize": 0,
                "isPcGroupPolicyDelayEnabled": true,
                "pcGroupPolicyDelayTime": 35
            },
            "sca": {
                "dataCollectionInterval": 2160
            },
            "deepscan": {
                "dataCollectionInterval": 10080,
                "scanDelay": 0,
                "scanRandomize": 0,
                "scanTimeOut": 1440,
                "maxCpuUsage": 30,
                "includedDirectoriesForWindows": "C:\\",
                "excludedDirectoriesForWindows": "C:\\Windows,C:\\System Volume Information,C:\\$RECYCLE.BIN,C:\\hiberfil.sys,C:\\pagefile.sys,C:\\swapfile.sys",
                "winIncludeAllDir": false,
                "includedDirectoriesForLinux": "/",
                "excludedDirectoriesForLinux": "/proc*,/var/log*,/var/spool*,/etc*,/usr/bin*,/usr/sbin*,/usr/lib*,/usr/lib64*,/boot*,/sys*,/srv*,/media*,/mnt",
                "linuxIncludeAllDir": false,
                "isDeepScanEnabled": false
            }
        },
        "applicationConfiguration": {
            "pm": {
                "cacheSize": 2048,
                "pmEnabled": true,
                "isCacheSizeUnlimited": false,
                "enableCpuThrottle": false
            },
            "fim": {
                "maxEventLogSize": 1024,
                "payloadThresholdTime": 300,
                "maxDiskUsage": 300,
                "dataCollectionInterval": 360,
                "fimEnabled": false
            },
            "edr": {
                "maxEventLogSize": 2048,
                "payloadThresholdTime": 300,
                "maxDiskUsage": 1024,
                "edrEnabled": true
            },
            "epp": {
                "eppEnabled": false,
                "thirdPartyRemovalEnabled": true
            },
            "sac": {
                "sacEnabled": false
            },
            "xdr": {
                "xdrEnabled": false
            }
        },
        "agentScanMerge": {
            "enableAgentScanMerge": true,
            "bindAll": false,
            "ports": "10001,10002,10003,10004,10005",
            "ipv4Enabled": false,
            "ipv6Enabled": true
        },
        "performance": {
            "isCustomized": false,
            "performanceBasedOn": "LOW",
            "customizedSettings": {
                "agentStatusInterval": 900,
                "deltaUploadInterval": 60,
                "chunkSizeForFile": 1024,
                "upgradeReattemptInterval": 64800,
                "loggingLevelForAgent": "VERBOSE",
                "priorityStatusUploadInterval": 300,
                "cpuLimit": 2,
                "cpuThrottle": 20
            },
            "securitySettings": {
                "vmScanMode": "AGENTUSER"
            }
        },
 
         "p2pConfigSetting": {
                "enabled": true,
                "minCacheSizeGB": 99,
                "maxCacheSizeGB": 100,
                "minRetentionDays": 10,
                "maxRetentionDays": 30,
                "transportPort": 4002,
                "adminPort": 5002
            }
    }

API Response

{
    "code": 200,
    "message": "Configuration Profile updated successfully with Name : Combo5",
    "timestamp": 1717429960235
}

Updated API: Create Activation Key API

New or Updated API Updated
API Endpoint /caui/v1/activation-keys/manage/activation-key
Method POST
DTD or XSD changes NA

We have made the titles mandatory when creating an activation key. To accommodate this change in APIs, we made the title parameter mandatory when creating an activation key via API.

Input ParametersInput Parameters

The following table lists the input parameter available for creating an activation key.

Input Parameter Mandatory/Optional Data Type Description
title Mandatory String Enter the activation key title. You must provide an unique activation key title
networkId Optional Integer Enter the network ID for the key. The Cloud Agents installed with this key will use the specified network ID.
expireDate Optional Date Enter the expiry date for the key in UTC/GMT format, i.e., YYYY-MM-DD. If the field is not provided, a key with no expiry date limit is created.
maxAgentsAllowed Optional Integer Specify the number of agents allowed to be installed with this key. If the maximum agent count is not defined, the key can be used to install a maximum up to 1000000 Cloud Agents.

Valid range: 1-1000000.
licenses Optional String Provision one or more Qualys applications for the key.

Valid values: VM, PC/PA, FIM, EDR, SCA, PM, CAPS, SwCA, MTG, ISL, and so on.
tags Optional Integer Enter the tag IDs for this key. These tags will be assigned to the Cloud Agents installed with the key.


Sample: Create an Activation KeySample: Create an Activation Key

The following sample demonstrates using Create Activation Key API.

API Request

    curl --location --request POST '<qualys_base_url> /caui/v1/activation-keys/manage/activation-key'
          --header 'Content-Type: application/json' \
          --header 'Authorization: Bearer <JWT Token>' 

API Request Body

--data ''
          {
            "title": "Test Activation Key",
            "networkId": 123456,
            "expireDate": "2026-09-08",
            "maxAgentsAllowed": 100,
            "licenses": [
              "VM","PC","PM"
            ],
            "tags": [
              123456
            ]
          }

API Response

    {
            "id": 123456,
            "title": “Test Activation Key”,
            "activationKey": "12ba12bc-effd-12e3-1234-12345ac12345",
            "networkId": 123456,
            "countUsed": 0,
            "countPurchased": 100,
            "datePurchased": "2025-09-08T19:43:45.378378608",
            "firstName": "John",
            "lastName": "Doe",
            "userName": "<username>",
            "keyType": "Count Time Limited",
          "expireDate": "2026-09-08"
            "isDisabled": false,
            "licenses": [
              "PM",
              "VM",
              "SCA"
            ],
            "tags": [],
            "applyToExistingAgents": false
          }