# Retrieve available filter parameters for inventory views Returns the list of available filter parameters including hardware types, hardware manufacturers, software manufacturers, software categories, and OS types that can be used to filter inventory data in various views. ## Endpoints **GET** `/dcapi/inventory/filterparams` ## Request URL ``` https://{serverurl}/dcapi/inventory/filterparams ``` ## Scope ``` DesktopCentralCloud.Inventory.READ ``` ## Header ``` Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52 ``` ## Request Parameters ### Request Headers - **Accept** (string) — **Mandatory** `application/filterParams.v1+json` ## Sample Request ### Curl ```bash curl --request GET \ --url https://appdomain/dcapi/inventory/filterparams \ --header 'Accept: application/filterParams.v1+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/dcapi/inventory/filterparams")) .header("Accept", "application/filterParams.v1+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/filterParams.v1+json", 'Authorization': "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52" } conn.request("GET", "/dcapi/inventory/filterparams", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ### Deluge ```javascript headersMap = Map(); headersMap.put("Accept", "application/filterParams.v1+json"); response = invokeUrl [ url: "https://appDomain/dcapi/inventory/filterparams" type: GET headers: headersMap connection: connection_name ] info response; ``` ### PowerShell ```powershell $headers=@{} $headers.Add("Accept", "application/filterParams.v1+json") $headers.Add("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") $response = Invoke-WebRequest -Uri 'https://appdomain/dcapi/inventory/filterparams' -Method GET -Headers $headers ``` ## Response Parameters ### HTTP code 200 **Response Body**: `application/json` Type: JSON object #### Attributes - **hardware_manufacturer_filter_params** (JSON object) Object containing a params array of hardware manufacturer names - **software_manufacturer_filter_params** (JSON object) Object containing a params array of software manufacturer names - **os_filter_params** (JSON object) Object containing a params array of operating system names - **computer_manufacturer_filter_params** (JSON object) Object containing a params array of computer manufacturer names - **hardware_type_filter_params** (JSON object) Object containing a params array of hardware type names - **category_filter_params** (JSON object) Object containing a params array of software category names ### HTTP code 400 **Response Body**: `application/json` Type: JSON object #### Attributes - **error_code** (string) `CUSTOMER_HEADER_MISSING` - MSP environment requires X-Customer header - **error_description** (string) Missing customer header error message ### HTTP code 401 **Response Body**: `application/json` Type: JSON object #### Attributes - **error_code** (string) `UAC_UNAUTHORIZED` - user lacks the required uem-roles or credentials are missing - **error_description** (string) Authentication or authorization failure reason ### HTTP code 500 **Response Body**: `application/json` Type: JSON object #### Attributes - **error_code** (string) `INTERNAL_ERROR` - unexpected exception in the service layer - **error_description** (string) Internal server error message ## Sample Response: HTTP 200 **Available filters** ```json { "os_filter_params": { "params": [ "Windows 11", "Windows 10" ] }, "category_filter_params": { "params": [ "Sample Category A", "Sample Category B" ] }, "software_manufacturer_filter_params": { "params": [ "Sample SW Manufacturer A", "Sample SW Manufacturer B" ] }, "hardware_type_filter_params": { "params": [ "Processor", "Disk Drive", "Network Adapter", "Keyboard", "Video Controller" ] }, "hardware_manufacturer_filter_params": { "params": [ "Sample HW Manufacturer A", "Sample HW Manufacturer B", "Unknown" ] }, "computer_manufacturer_filter_params": { "params": [ "Sample Manufacturer A", "Sample Manufacturer B" ] } } ``` ## Sample Response: HTTP 400 **MSP header missing** ```json { "error_description": "dc.rest.customer_header.missing", "error_code": "CUSTOMER_HEADER_MISSING" } ``` ## Sample Response: HTTP 401 **Missing credentials** ```json { "error_description": "Unauthorized access", "error_code": "UAC_UNAUTHORIZED" } ``` ## Sample Response: HTTP 500 **Server error** ```json { "error_description": "Internal server error", "error_code": "INTERNAL_ERROR" } ``` ## Possible HTTP Status Codes - **200** - **400** - **401** - **500** **Duration:** 1 minute **Threshold:** 120 **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.