# Retrieve a paginated list of devices that have not been scanned by EDR Returns a paginated list of managed devices that have not yet been scanned by the EDR agent. Use the `getScannedComponents` parameter to toggle between scanned and unscanned device lists. Useful for identifying coverage gaps in EDR deployment. ## Endpoint `GET /edr/api/view/not_scanned_devices` ## Request URL `https://{server-hostname}:8383/edr/api/view/not_scanned_devices` ## Scope `EDR.READ` ### Header `Authorization: d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Accept** (`string`, Mandatory): `application/json` ### Query Parameters - **getScannedComponents** (`boolean`, Optional): When true, returns devices that have been scanned. When false or omitted, returns devices that have not yet been scanned. - **page** (`string`, Optional): Page number for pagination. Defaults to 1. - **pageLimit** (`string`, Optional): Number of records per page. Default is 25, maximum is 1000. ## Sample Request ```curl curl --request GET \ --url 'https://appdomain/edr/api/view/not_scanned_devices?getScannedComponents=SOME_BOOLEAN_VALUE&page=SOME_STRING_VALUE&pageLimit=SOME_STRING_VALUE' \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' ``` ## Response Parameters ### HTTP Code 200 Response Body: `application/json` `JSON Object` - **status** (`string`): Response status. `'success'` if the request completed successfully, `'failure'` if an error occurred. - **totalRecords** (`string`): Total number of records matching the applied filters. - **totalPages** (`string`): Total number of pages available based on the current page limit. - **metadata** (`JSON Object`): Pagination metadata containing the current page number and page limit. - **Links** (`JSON Object`): Navigation links to the next and previous pages of results. - **messageResponse** (`JSON Object`): Actual device not scanned item response. ### HTTP Code 400 Response Body: `application/json` `JSON Object` - **errorCode** (`string`): `EDRCOMMON001` — Internal server error occurred while retrieving the unscanned device list. - **errorMessage** (`string`): General internal error message. ### HTTP Code 429 Response Body: `application/json` `JSON Object` - **errorCode** (`string`): Rate limit error code. `IAM0019` — Returned when the API call threshold is exceeded within the allowed duration window. - **errorMessage** (`string`): Rate limit exceeded message with guidance on when to retry. ## Sample Response: HTTP 200 Paginated list of devices not yet scanned by EDR ```json { "metadata": { "limit": 25, "page": 3 }, "totalRecords": "51", "messageResponse": [ { "resource_name_transform": "DESKTOP-EXAMPLE", "managed_status": "61", "processor_architecture": "2", "agent_last_contact_time": "1700007000000", "activated_time": "1700000000000", "last_ui_init_scan_time": null, "is_suspended": "false", "last_updated_time_transform": "--", "status_reason_transform": "--", "ui_initiated_scan_status": null, "ml_version": "", "def_file_version": "260101120000", "ip_address_transform": "192.168.1.10,10.0.0.5", "os_name_transform": "Windows 11 Professional Edition (x64)", "server_os": "1", "udid": "2000000000000001", "domain_netbios_name_transform": "CORP", "yara_sign_version": "", "status_update_time": "1700012600000", "bloom_version": "", "health_last_contact_time_transform": "Jan 15, 2025 12:00 PM", "component_id": "3000000000000001", "scan_end_time_transform": "--", "os_version": "10.0.19041", "os_platform": "1", "last_successful_scan_time_transform": "--", "component_status_transform": "1", "last_sync_time": null, "agent_version": "11.x.xxxx.xx.W", "clips_version": "", "mc_engine_version": "", "edr_status_update_time": "1700007200000", "resource_id": "2000000000000001", "scan_status_transform": "--", "scan_start_time_transform": "--", "customer_name": "John Doe", "customer_id": "1000000000000001", "component_version_transform": "1.0.x.0" } ], "totalPages": 3, "Links": { "next": "null", "prev": "/edr/api/view/not_scanned_devices?page=2&pageLimit=25" }, "status": "success" } ``` ## Sample Response: HTTP 400 Unexpected server-side error ```json { "errorMessage": "Exception while retrieving unscanned device list", "errorCode": "EDRCOMMON001" } ``` ## Sample Response: HTTP 429 API call threshold exceeded ```json { "errorCode": "IAM0019", "url": "/edr/api/view/not_scanned_devices", "errorMsg": "The URL /edr/api/view/not_scanned_devices was called too many times. Please retry after a while." } ``` ## Rate Limit ![](https://www.zohowebstatic.com/sites/zweb/images/people/ico-help.png) **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.