# Retrieve a list of managed devices gets list of devices and its details ## Endpoints **GET** `/api/v1/mdm/devices` ## Request URL ```text https://{server-hostname}:8383/api/v1/mdm/devices ``` ## Scope ```text MDMInventory.READ ``` ## Header ```text Authorization: d92d4xxxxxxxxxxxxx15f52 ``` ## Request Parameters ### Request Headers | Parameter | Type | Required | Value | Description | |---|---|---|---|---| | Accept | string | Mandatory | application/json | | ### Query Parameters | Parameter | Type | Required | Description | |---|---|---|---| | limit | integer | Optional | Maximum number of records to return in a single response. Used together with offset for pagination | | skip-token | string | Optional | Pagination continuation token returned by a previous response. Pass it to fetch the next page of results | | offset | integer | Optional | Zero-based index of the first record to return. Used together with limit for pagination | | delta-token | string | Optional | Token used for delta/incremental fetches. Pass the token returned from a previous response to retrieve only items modified since that point | | searchkey | string | Optional | Value to search for. Must be used in combination with searchfield to specify which field is searched | | searchfield | string | Optional | Name of the field to search against. Used together with searchkey (e.g., name, email, udid) | | is_allowed_apps | boolean | Optional | Set to true to return apps from the allow list, false to return apps from the block list | | is_app_purchased_from_portal | boolean | Optional | Set to true to restrict results to apps purchased through the enterprise app portal (VPP/managed Google Play). Default: false | | search | string | Optional | Free-text search string applied to the default searchable fields of the resource | | app_scope | string | Optional | Filter applications by their assignment scope. Allowed values: 1=All, 2=Assigned to groups, 3=Assigned to devices | | platform | string | Optional | Filter results by device platform. Allowed values: 1=iOS, 2=Android, 3=Windows, 4=macOS, 6=tvOS | | email | string | Optional | | | group_id | long | Optional | | | exclude_removed | boolean | Optional | | | owned_by | integer | Optional | | | device_type | string | Optional | Filter results by device type. Allowed values: 1=Mobile, 2=Tablet, 3=Laptop, 4=Desktop, 5=TV | | select_all | boolean | Optional | When true, applies the operation to every record matching the current filter rather than to specific IDs. Default: false | | device_group_unassigned | boolean | Optional | When true, returns only devices that are not assigned to any device group. Default: false | | summary | boolean | Optional | When true, returns only a lightweight summary projection of the resource instead of full details. Default: false | | imei | string | Optional | | | include_all | boolean | Optional | | | serial_number | string | Optional | | | customer_ids | string | Optional | | | is_tree_source | boolean | Optional | | | exclude_agent | string | Optional | | | is_supervised | boolean | Optional | | | probeid | string | Optional | | | start_date | string | Optional | | | end_date | string | Optional | | ## Sample Request ```curl curl --request GET \ --url 'https://appdomain/api/v1/mdm/devices?limit=SOME_INTEGER_VALUE&skip-token=SOME_STRING_VALUE&offset=SOME_INTEGER_VALUE&delta-token=SOME_STRING_VALUE&searchkey=SOME_STRING_VALUE&searchfield=SOME_STRING_VALUE&is_allowed_apps=SOME_BOOLEAN_VALUE&is_app_purchased_from_portal=SOME_BOOLEAN_VALUE&search=SOME_STRING_VALUE&app_scope=SOME_STRING_VALUE&platform=SOME_STRING_VALUE&email=SOME_STRING_VALUE&group_id=SOME_INTEGER_VALUE&exclude_removed=SOME_BOOLEAN_VALUE&owned_by=SOME_INTEGER_VALUE&device_type=SOME_STRING_VALUE&select_all=SOME_BOOLEAN_VALUE&device_group_unassigned=SOME_BOOLEAN_VALUE&summary=SOME_BOOLEAN_VALUE&imei=SOME_STRING_VALUE&include_all=SOME_BOOLEAN_VALUE&serial_number=SOME_STRING_VALUE&customer_ids=SOME_STRING_VALUE&is_tree_source=SOME_BOOLEAN_VALUE&exclude_agent=SOME_STRING_VALUE&is_supervised=SOME_BOOLEAN_VALUE&probeid=SOME_STRING_VALUE&start_date=SOME_STRING_VALUE&end_date=SOME_STRING_VALUE' \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' ``` ## Response Parameters ### HTTP Code 200 #### Response Body: application/json | Parameter | Type | Description | |---|---|---| | devices | JSON Array | Array of managed device objects | ## Possible Response Codes | Code | Type | Description | |---|---|---| | 200 | HTTP code | | ## Sample Response: HTTP 200 List of managed devices with user and summary details ```json { "devices": [ { "summary": { "doc_count": "1", "group_count": "2", "profile_count": "5", "app_count": "10" }, "device_id": "9007199254741001", "os_version": "8.0.0", "is_lost_mode_enabled": false, "owned_by": "2", "is_removed": "false", "serial_number": "2321bkbkqgidga1", "product_name": "samsung", "device_name": "admin_SM-G935F", "platform_type": "android", "imei": 357327071694307, "model": "SM-G935F", "udid": "f8c4071d394ef48e", "platform_type_id": "2", "user": { "user_email": "admin@zylker.com", "user_id": "9007199254740999", "user_name": "admin" } } ] } ``` ![ ](https://www.zohowebstatic.com/sites/zweb/images/people/ico-help.png) **Duration:** 1 minute | **Threshold:** 250 | **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.