Initiate an on-demand compliance scan

Open in ChatGPT Open in ChatGPT to ask questions about this page
Open in Claude Open in Claude to ask questions about this page
Copy as MarkdownCopy this page as markdown to use with AI assistants
View as Markdown Open this page as markdown in a new tab

Initiates an on-demand CIS compliance scan for all resources in the specified custom group. Subject to a cooling period between consecutive scan operations

Request URL

https://{serverurl}/dcapi/scap/compliance/initiateComplianceScan

Scope

DesktopCentralCloud.VulnerabilityMgmt.CREATECopied!

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Request Parameters

- Query Parameters

customGrpIdlongOptional

The resource ID of the custom group to scan

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request POST \
  --url https://appdomains/dcapi/scap/compliance/initiateComplianceScan \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52'

Response Parameters

- HTTP code 200

Response Body - application/json
JSON Object
Hide Sub-Attributes
statusstring

Scan initiation status. inProgress on success, failed on failure

messagestring

Human-readable status message

- HTTP code 401

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodelong

Unauthorized error code: credentials missing, expired, or invalid

errorMsgstring

Authentication failure reason

- HTTP code 412

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodestring

Precondition failed error code. Scan is still in cooling period from a previous scan

errorMessagestring

Message indicating the remaining cooling period minutes before next scan is allowed

- HTTP code 429

Response Body - application/json
JSON Object
Hide Sub-Attributes
errorCodelong

Rate limit error code returned when the API call reached threshold

errorMsgstring

Rate limit exceeded message with retry guidance

Possible Response Codes

200HTTP code
401HTTP code
412HTTP code
429HTTP code

Sample Response: HTTP 200

Compliance scan initiated successfully

Copied!
  {
    "message": "Scan initiated successfully",
    "status": "inProgress"
  }
                
Show full

Scan initiation failed due to authorization

Copied!
  {
    "message": "Not Authorised",
    "status": "failed"
  }
                
Show full

Scan initiation failed

Copied!
  {
    "message": "Scan initiation failed",
    "status": "failed"
  }
                
Show full

Sample Response: HTTP 401

Authentication credentials are missing or invalid

Copied!
  {
    "errorMessage": "Authentication required",
    "errorCode": "UNAUTHORIZED"
  }
                
Show full

Sample Response: HTTP 412

Scan is in cooling period from previous scan

Copied!
  {
    "errorMessage": "All managed system(s) are currently being scanned. Retry scanning system(s) after 5 minute(s).",
    "errorCode": "COMPLIANCE_SCAN_ALL_FROZEN"
  }
                
Show full

Sample Response: HTTP 429

API call threshold exceeded

Copied!
  {
    "errorMessage": "Rate limit exceeded. Retry after some time",
    "errorCode": "TOO_MANY_REQUESTS"
  }
                
Show full

Duration: 1 minute | Threshold: 30 | Lock period: 5 minutes

Duration - Time window for the threshold.
Threshold - Number of API calls allowed within the specified duration.
Lock Period - Wait time before consecutive API requests.