# Retrieve installed software across managed computers Returns the complete list of software installed across all managed computers. ## Endpoints `GET /dcapi/inventory/viewData/software` ## Request ### Request URL `https://{serverurl}/dcapi/inventory/viewData/software` ### Scope `DesktopCentralCloud.Inventory.READ` ### Header `Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52` ### Request Parameters #### Request Headers - **Accept** (`string`, Mandatory): `application/InventoryMobileAPI.v1+json` #### Query Parameters - **toolID** (`string`, Mandatory): Set value as `2121`. - **domain** (`string`, Optional): Domain name to filter computers. Obtain from the response of the [Get Computers List](https://www.manageengine.com/products/desktop-central/help/api/cloud/computers-getcomputers.html) API. - **customGroup** (`string`, Optional): Custom group ID to filter computers. Obtain it from the response of the [Get Custom Group List](https://www.manageengine.com/products/desktop-central/help/api/cloud/custom-groups-get-cglist.html) API. - **accesstype** (`string`, Optional): Access type filter. Allowed values: `1` - Allowed, `2` - Prohibited, `0` - Not assigned. - **compliancestatus** (`string`, Optional): Compliance status filter. Allowed values: `0` - Under licensed, `1` - Over licensed, `2` - In compliance, `3` - Expired, `-1` - Not available. - **licensetype** (`string`, Optional): License type filter. Allowed values: `1` - Commercial, `2` - Non-commercial, `0` - Unidentified. ### Sample Request ```curl curl --request GET \ --url 'https://appdomains/dcapi/inventory/viewData/software?toolID=2121' \ --header 'Accept: application/InventoryMobileAPI.v1+json' \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' ``` ## Response Parameters ### HTTP Code 200 Response body: `application/json` - JSON Object - **metadata** (`JSON Object`): Pagination metadata. - **totalRecords** (`string`): Total number of records matching the query. - **messageResponse** (`JSON Array`): Array of software detail objects. - **totalPages** (`string`): Total number of pages. - **Links** (`JSON Object`): Pagination links. - **status** (`string`): Response status - success. ### Sample Response: HTTP 200 Software view data ```json { "metadata": { "limit": 25, "page": 1 }, "totalRecords": "2", "messageResponse": [ { "comments_transform": "--", "managed_installations_transform": "1", "software_version_transform": "24.05", "network_installations_transform": "1", "sw_type_transform": "Commercial", "managed_installations": "1", "software_id": "4", "sw_category_name": null, "software_compliance_description": null, "sw_family_transform": "Desktop Apps", "display_name_transform": "Sample Software", "detected_time_transform": "May 14, 2026 07:42 PM", "compliant_status": null, "software_name": "Sample Software", "software_version": "1.0.0", "sw_type": "0", "software_compliance_description_transform": null, "total_copies_transform": "--", "network_installations": "1", "managed_sw_id": "4", "manufacturer_id": "17", "is_usage_prohibited_transform": "Prohibited", "detected_time": "1778751155595", "comments": null, "total_copies": null, "manufacturer_name": "Sample Manufacturer", "display_name": "Sample Software", "sw_family": "1", "manufacturer_name_transform": "Sample Manufacturer", "remaining_copies": null, "installed_format": "EXE", "sw_category_name_transform": "Not Assigned", "remaining_copies_transform": "--", "is_usage_prohibited": "2" } ], "totalPages": 1, "Links": { "next": null, "prev": null }, "status": "success" } ``` ### HTTP Code 500 Response body: `application/json` - JSON Object - **error_code** (`string`): `INTERNAL_ERROR` - unexpected exception in the service layer. - **error_description** (`string`): Internal server error message. ### Sample Response: HTTP 500 Server error ```json { "error_description": "Internal server error", "error_code": "INTERNAL_ERROR" } ``` ## Possible Response Codes - **200**: HTTP code. - **500**: HTTP code. **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.