# Retrieves available values for a dynamic custom group criteria column Returns distinct values for the specified criteria column. Use the returned values in the `criteriaList[].criteriaValue` array when calling [Create Dynamic CG](https://www.manageengine.com/products/desktop-central/custom-groups-create-dynamic-cg.html) or [Update Dynamic CG](https://www.manageengine.com/products/desktop-central/custom-groups-update-dynamic-cg.html). Fetch valid `columnId` values from [Get Dynamic CG Criteria Pattern](https://www.manageengine.com/products/desktop-central/custom-groups-get-dynamic-cgcriteria-pattern.html). Supports pagination via `rangeIndex`/`limit` and text filtering via `searchChar`. For software version columns, filter by software name using `softwareNameForVersion`. ## Endpoints **GET** `/api/1.4/customgroup/dynamic/columnValues` ## Request URL ``` https://{serverurl}/api/1.4/customgroup/dynamic/columnValues ``` ## Scope ``` DesktopCentralCloud.Common.READ ``` ## Header ``` Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52 ``` ## Request Parameters ### Request Headers - **Accept** (string) — Mandatory `application/json` Must be application/json. Only JSON responses are supported. ### Query Parameters - **columnId** (long) — Mandatory ID of the criteria column whose values to retrieve. Fetch from [Get Dynamic CG Criteria Pattern](https://www.manageengine.com/products/desktop-central/custom-groups-get-dynamic-cgcriteria-pattern.html). Column IDs are instance-specific auto-generated values. - **softwareNameForVersion** (string) — Optional Software name to filter version values. Used when `columnId` refers to a software version column. - **searchChar** (string) — Optional Text filter applied to column values. Only values containing this string are returned. - **rangeIndex** (string) — Optional Pagination start index (1-based). Default: 1 - **limit** (string) — Optional Maximum number of values to return per page. Default: 30 ## Sample Request ### Curl ```bash curl --request GET \ --url 'https://appdomain/api/1.4/customgroup/dynamic/columnValues?columnId=SOME_INTEGER_VALUE' \ --header 'Accept: application/json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' ``` ### Java ```java import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.io.IOException; import java.net.http.HttpTimeoutException; public class Main { public static void main(String[] args) { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://appdomain/api/1.4/customgroup/dynamic/columnValues?columnId=SOME_INTEGER_VALUE")) .header("Accept", "application/json") .header("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") .method("GET", HttpRequest.BodyPublishers.noBody()) .build(); HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); } } ``` ### Python ```python import http.client conn = http.client.HTTPSConnection("appdomain") headers = { 'Accept': "application/json", 'Authorization': "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52" } conn.request("GET", "/api/1.4/customgroup/dynamic/columnValues?columnId=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ### Deluge ```javascript parameters = "columnId=value"; headersMap = Map(); headersMap.put("Accept", "application/json"); response = invokeUrl [ url: "https://appDomain/api/1.4/customgroup/dynamic/columnValues" + "?" + parameters type: GET headers: headersMap connection: connection_name ] info response; ``` ### PowerShell ```powershell $headers=@{} $headers.Add("Accept", "application/json") $headers.Add("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") $response = Invoke-WebRequest -Uri 'https://appdomain/api/1.4/customgroup/dynamic/columnValues?columnId=SOME_INTEGER_VALUE' -Method GET -Headers $headers ``` ## Response Parameters ### HTTP 200 **Response Body — application/json** - **message_type** (string) Always `'dynamic'` for this endpoint. - **message_response** (JSON object) Response payload container. - **dynamic** (JSON object) Response payload. - **\*** (JSON object) Sequential-integer-keyed map (`'0'`, `'1'`, `'2'`, …). Empty object `{}` when no values match. - **label** (string) Display text for the criteria value dropdown. - **value** (string) Actual value to use in `criteriaValue` array when calling [Create Dynamic CG](https://www.manageengine.com/products/desktop-central/custom-groups-create-dynamic-cg.html) or [Update Dynamic CG](https://www.manageengine.com/products/desktop-central/custom-groups-update-dynamic-cg.html). - **message_version** (string) API version: `'1.4'`. - **status** (string) `'success'` when the request completed without errors. ### HTTP 500 **Response Body — application/json** - **message_type** (string) Always `'dynamic'` for this endpoint. - **message_version** (string) API version: `'1.4'`. - **status** (string) Always `'error'` for error responses. - **error_code** (string) Internal error code: `'1003'` (INTERNAL_ERROR). - **error_description** (string) Resolved I18N message, typically: An internal error occurred while processing the request. ## Possible Response Codes - **200** — HTTP code - **500** — HTTP code ## Sample Response: HTTP 200 ### OS name values for columnId for OS_NAME (instance-specific) ```json { "message_type": "dynamic", "message_response": { "dynamic": { "0": { "label": "Windows 11 Enterprise", "value": "Windows 11 Enterprise" }, "1": { "label": "Windows 10 Pro", "value": "Windows 10 Pro" }, "2": { "label": "Windows Server 2022 Standard", "value": "Windows Server 2022 Standard" }, "3": { "label": "Ubuntu 22.04 LTS", "value": "Ubuntu 22.04 LTS" } } }, "message_version": "1.4", "status": "success" } ``` ### Software version values filtered by softwareNameForVersion=Google Chrome ```json { "message_type": "dynamic", "message_response": { "dynamic": { "0": { "label": "120.0.6099.130", "value": "120.0.6099.130" }, "1": { "label": "119.0.6045.200", "value": "119.0.6045.200" } } }, "message_version": "1.4", "status": "success" } ``` ### No matching values found for the column and filters ```json { "message_type": "dynamic", "message_response": { "dynamic": {} }, "message_version": "1.4", "status": "success" } ``` ## Sample Response: HTTP 500 ### Unexpected server-side failure retrieving column values ```json { "error_description": "An internal error occurred while processing the request.", "message_type": "dynamic", "error_code": "1003", "message_version": "1.4", "status": "error" } ``` ## Rate Limiting **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.