Creates a new application group (whitelist or blacklist) with the specified application rules. Use the Get App Rules by Type API to retrieve vendorID, productVendorID, or storeAppID values to use as verifiedAppRepoIDs or unVerifiedAppRepoIDs in the request body.
https://{serverurl}/dcapi/appctrl/appgroups
Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52
Application group type (0=Custom, 1=Whitelist, 2=Blacklist)
Platform ID (1=Windows, 2=Mac)
Description of the application group (can be empty)
Name of the application group
Array of rules to add to the group — prefetch IDs from Get App Rule Types
Rule type (1=Vendor, 2=Product, 3=Executable, 4=FileHash, 9=StoreApp) — determines which ID array to use
Array of verified repository IDs (vendorID, productVendorID, executableID, fileHashID) — prefetch from Get App Rule Types
Array of unverified repository IDs (storeAppID for appRuleType=9) — prefetch from Get App Rule Types
Array of rules to remove (empty array for new group creation)
curl --request POST \
--url https://appdomains/dcapi/appctrl/appgroups \
--header 'Accepts: application/json' \
--header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \
--header 'Content-Type: application/addAppGroupRules.v1+json' \
--data '{"removedRules":[],"appGroupName":"Test 1","appGroupType":0,"platformID":1,"addedRules":[{"appRuleType":1},{"appRuleType":9}]}'Create an application group with vendor rules (verified) and store app rules (unverified)
{
"removedRules": [],
"appGroupName": "Test 1",
"appGroupType": 0,
"description": "",
"platformID": 1,
"addedRules": [
{
"appRuleType": 1,
"verifiedAppRepoIDs": [
"302",
"314",
"311",
"313"
]
},
{
"appRuleType": 9,
"unVerifiedAppRepoIDs": [
"5",
"6",
"10"
]
}
]
}
Create a whitelist group with product rules
{
"removedRules": [],
"appGroupName": "Approved Applications",
"appGroupType": 1,
"description": "Whitelist for approved software",
"platformID": 1,
"addedRules": [
{
"appRuleType": 2,
"verifiedAppRepoIDs": [
"15",
"13",
"12"
]
}
]
}
Create a blacklist group with executable hash rules
{
"removedRules": [],
"appGroupName": "Blocked Applications",
"appGroupType": 2,
"description": "Blocked malicious executables",
"platformID": 1,
"addedRules": [
{
"appRuleType": 4,
"verifiedAppRepoIDs": [
"101",
"102"
]
}
]
}
Unique identifier of the newly created application group
Error code: INVALID_REQUEST for validation failures
Detailed validation error message
Unauthorized error code: credentials missing, expired, or invalid
Authentication failure reason
Internal error code: INTERNAL_ERROR when exception occurs creating app group
Detailed message: Exception Occurred While creating AppGroup
Application group created successfully
{
"appGrpId": "2"
}
Invalid request parameters
{
"errorMessage": "Invalid application group type or platform ID",
"errorCode": "INVALID_REQUEST"
}
Authentication credentials missing or invalid
{
"errorMessage": "Authentication credentials are missing or invalid",
"errorCode": "UNAUTHORIZED"
}
Internal error while creating application group
{
"errorMessage": "Exception Occurred While creating AppGroup",
"errorCode": "INTERNAL_ERROR"
}
![]()
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.
© 2026, Zoho Corporation Pvt. Ltd. All Rights Reserved.