API : FlexCare : MDM : Dashboard : Device list
Introduction
This request retrieves list of devices matching query from specific point in the Dashboard.
If no customer is provided the list will be grouped pr. customer
Request
| URL | https://api.telecomx.dk/flexcare/mdm/dashboard/devicelist |
| Method | GET |
| Access level | RESELLER_ADMIN, ADMIN |
| Query | offset | [optional] Index of the first profile to return, default is 0. |
| limit | [optional] The number of profiles to return, default is 100 |
| customerId | optional Unique id of the customer to find devices for |
| type | Type of list to return.
See possible values further down |
| appPackageName | Package name of application, only if type is APP_VERSION |
| appVersion | Version of the application, only if type is APP_VERSION |
| board | Type of board, only if type is ANDROID_BOARD |
| firmware | Firmware version, only if type is ANDROID_FIRMWARE |
Possible types in query
| Type | description |
| APP_STATUS_AJOUR | No missing applications and no outdated applications |
| APP_STATUS_OUTDATED | At least one applcation is outdated |
| APP_STATUS_MISSING | At least one application is missing |
| APP_VERSION | Device's has the specified application installed |
| ANDROID_BOARD | Devices has the specified board |
| ANDROID_FIRMWARE | Devices has the specified firmware |
Query examples
https://api.telecomx.dk/flexcare/mdm/dashboard/devicelist?offset=25&limit=50&type=APP_STATUS_AJOUR
Response
Response grouped by customer
| JSON Object |
| offset | Number | Index of the first customer returned |
| limit | Number | Limit of customers returned |
| total | Number | Total amount of customers |
| groupedBy | String | CUSTOMER |
| items | Array | List of customers |
| items[]._id | ObjectId | Unique id of the customer |
| items[].name | String | Name of the customer |
| items[].totalDevices | Number | The number of devices for the customer that matches |
Response not grouped
| JSON Object |
| offset | Number | Index of the first device returned |
| limit | Number | Limit of devices returned |
| total | Number | Total amount of devices |
| items | Array | List of devices |
| items[]._id | ObjectId | Unique id of the device |
| items[].name | String | Name of the device |
| items[].type | String | 'ANDROID', 'STB' |
| items[].deviceType | String | 'ANDROID_TABLET', 'ANDROID_BOX', 'STB' |
| items[].appsMissing | Array<String> | Package names of the apps missing, only if type is 'ANDROID' |
| items[].appsOutdated | Array<String> | Package names of the apps that are outdated, only if type is 'ANDROID' |
| items[].customer | ObjectId | Unique id of the customer |
| items[].deviceId | String | |
| Items[].tabletProfile | ObjectId | Unique id of the tablet profile the device has, only if type is 'ANDROID' |
| items[].stbProfile | ObjectId | Unique id of the profile the device uses. only if type is 'ANDROID' |
| items[].applications | Array | List of applications that should be installed on the device, only if type is 'ANDROID' |
| items[].applications[].installed | Boolean | Whether application is installed on the device |
| items[].applications[].name | String | Name of the application |
| items[].applications[]._id | String | Package name of the application |
| items[].applications[].versionCode | Number/null | Build version of the installed application |
| items[].applications[].versionName | String/null | Version number of the application |
| items[].info | Object |
| items[].info.androidVersion | String | Version of android installed on device, only if type is 'ANDROID' |
| items[].info.appVersion | String | Version of the frontend of the device |
| items[].info.lastComm | String<ISO Date> | Last time the backend heard from the device |
| items[].info.model | String | Model of the device |
Errors
| Error code | Message | Description |
| 403 | access_denied | Insufficient access level |
| 422 | type | Unknown type specified |
| 500 | internal_error | <Unspecified> |