LogMeIn Resolve MDM API v1 user guide
Introduction to LogMeIn Resolve MDM API
LogMeIn Resolve MDM API (Application Programming Interface) is an interface intended for integrating LogMeIn Resolve MDM with external systems. This document describes the programming interface and includes lots of examples. The document is aimed for technical persons implementing the interface.
LogMeIn Resolve MDM API is a REST based web service which can be used to programmatically create, read, update and remove items in LogMeIn Resolve MDM. It is used over HTTPS with POST, GET, PUT and DELETE methods. API request are authenticated with authentication key in request’s URL. Authentication keys are managed in LogMeIn Resolve MDM web console. The API uses XML as its payload.
REST highly utilizes HTTP request URL in its operations. URL and query string describes how URLs are formed and what additional keywords can be used to modify queries. Authentication and security contains information about how web service calls can be authenticated. Available operations lists available operations and their usage. XML payload structure describes the structure of input and output XML documents used by the web service. Appendix 1: Supported items and operations contains a list of available configuration items and their attributes that can be accessed by the API.
URL and query string
LogMeIn Resolve MDM API is used by sending HTTP requests to LogMeIn Resolve MDM server. Depending on the operation, data is transferred in URL or the body of HTTP request. Get and remove operations transfer all required information in the HTTP request URL. Create and update operations require also some data in the HTTP request body. This chapter describes the structure of the web service HTTP request URL.
Base URL for API calls is https://mdm.gotoresolve.com/<site>/API/<Item>.
Table 1 lists the available operations and corresponding HTTP methods. For more information about operations, see Available operations.
Operation | Method | URL |
---|---|---|
Get | GET | /API/<Item> /API/<Item>/<ID> |
Create | POST | /API/<Item> |
Update | PUT | /API/<Item>/<ID> |
Remove | DELETE | /API/<Item>/<ID> |
The URL may contain an optional query string which contains specific settings to the query. Table 2 lists the available query string setting keywords. Query string settings are explained more comprehensively in the following chapters.
Setting | G | C | U | R | Description |
---|---|---|---|---|---|
auth | x | x | x | x | Authentication key generated in LogMeIn Resolve MDM. This is required. |
options | x | x | x | x | Can be used to define output and input formatting. |
select | x | x | x | Defines what item attributes are selected to response. | |
filters | x | Defines item attribute based filters used to filter the items that query concerns. | |||
orderby | x | Define the order in which the configuration items are listed within the response. |
Query string is formatted just like any standard URL query string containing key-value pairs:
Example: Web service request with multiple keywords in query string
GET: /API/Device?auth=1_asi3tfoi2zD4Ht7&select= InvDevice.IMEI,InvDevice.Model,User.FirstName,User.LastName&filters=Location.Name eq Helsinki&options=rows=500,page=1
This request contains select, filters and options keywords. Options defines two options: rows and page.
Options
LogMeIn Resolve MDM API supports several options that can be used to modify query handling and response. Table 3 lists the available options. Detailed descriptions of the options can be found after the table.
Some of the options are on/off flags and some require value. The syntax for the options is the following: /API/<Item>?options=flag,option=optionvalue
Option | G | C | U | R | Description | Default |
---|---|---|---|---|---|---|
dateformat | x | x | x | Defines the DateTime format string for input and output dates. | dd.MM.yyyy HH:mm:ss | |
page | x | Page number of the page which will be returned. | 1 | |||
rows | x | Number of rows (root level items) on one page. | 100 | |||
usenamespace | x | x | x | If set, adds an XML namespace declaration to response documents. | Not set |
Dateformat
Dateformat option defines the representation of incoming and outgoing date-time values. With this option the API can be used with a date format familiar for caller end. Dateformat supports .Net date format strings. Refer to Microsoft’s documentation for more information about available configurations. For example, information about custom date and time format strings can be found from http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx..
- Default value: dd.MM.yyyy HH:mm:ss
- Usage: options=dateformat=<.Net DateTime format string>
<Content>
<Items count="1">
<Device>
<WarrantyEndDate>01-20-2014</WarrantyEndDate>
</Device>
</Items>
</Content>
Paging
Paging can be used to limit the number of items returned by the query. If the query returns lots of items, it might be useful to improve query performance by processing data in smaller pieces. Paging can be set with the following options:
- Rows: Defines the number of items returned per page (default: 100)
- Page: Page number (default: 1)
Example: Usage of paging with rows and page options
For example, if your query returns 550 items, you can request the data in three consecutive queries:
- Query #1: options=rows=250,page=1
- Output: Items from 1 to 250
- Query #2: options=rows=250,page=2
- Output: Items from 251 to 500
- Query #3: options=rows=250,page=3
- Output: Items from 501 to 550
Usenamespace
This option can be used to add default namespace declaration to the response documents. See XML payload structure for more information.
- Usage: options= usenamespace
Example: Usage of usenamespace option
- Usage: GET: API/Device/1835?Options=usenamespace&select=InvDevice.IMEI
- Example output:
<Content xmlns="http://www.mdm.gotoresolve.com/xmlns/api/1.0">
<Items count="1">
<Device>
<InvDevice>
<IMEI>012804006425674</IMEI>
</InvDevice>
</Device>
</Items>
</Content>
Select
Select query setting is used to define which item attributes are included in the response.
Each exportable item has a predefined list of selected attributes. These default attributes are returned if nothing else is selected. Best practice is always to define explicitly the attributes required by the caller end.
If select is used with create or update operations, created or updated item is returned. Without select those operations return empty response.
The syntax for the expression is the following:
/API/<Item>?select=Attribute1,Attriburte2,ChildItem1.ChildAttribute1,ChildItem1.ChildAttribute2
Following examples explain the usage of the select setting.
Example: Simple select example
Select only WarrantyEndDate, User.LastName and User.FirstName attributes.
- Usage: GET: API/Device?auth=1_asdf&select=WarrantyEndDate,User.LastName,User.FirstName
- Example output:
<Content> <Items count="1"> <Device> <WarrantyEndDate>21.08.2015 03.00.00</WarrantyEndDate> <User> <Lastname>John</Lastname> <Firstname>Straw</Firstname> </User> </Device> </Items> </Content>
Example: Select with filtering
The select setting can be used in conjunction with filters setting (see Filters). Excluding an attribute with the select does not prevent filtering with the attribute.
Select user’s first and last names and warranty end dates of devices which inventoried model name contains word iPhone
- Usage: GET: API/Device?auth=1_asdf&select=User.FirstName,User.LastName,WarrantyEndDate &filters=InvDevice.Model contains iPhone
- Example output:
<Content> <Items count="1"> <Device> <User> <Firstname>Jim</Firstname> <Lastname>Straw</Lastname> </User> <WarrantyEndDate>24.08.2014 03.00.00</WarrantyEndDate> </Device> </Items> </Content>
Example: "Select all" statement
By default, LogMeIn Resolve MDM API returns only default attributes for an item. Select all statement can be used to select all attributes, except inventoried attributes, from an item. ‘*’ must be defined explicitly for each child item if all attributes are wanted to select. I.e. ‘*’ on the root level applies only attributes of the requested item and for child items, only the default set of attributes is selected.
Select all attributes of Device (queried item), all attributes of User child item and Model attribute of InvDevice child item. As you can see from the output, only default attributes for Location and Organization child items are selected because query doesn’t contain explicitly defined select list for them.
- Usage: GET: API/Device?auth=1_asdf&select=*,User.*,InvDevice.Model
- Example output:
<Content> <Items count="1"> <Device> <ID>1008</ID> <User> <ID>1024</ID> <Name>Jim Straw</Name> <Email>jim.straw@trestacom.com</Email> <Firstname>Jim</Firstname> <Lastname>Straw</Lastname> <PhoneNumber>+358 50 1234 567</PhoneNumber> </User> <Location> <ID>2</ID> <Parent> <ID>1</ID> </Parent> </Location> <Organization> <ID>4</ID> <Parent> <ID>1</ID> </Parent> </Organization> <Status>AutoGenerated</Status> <WarrantyEndDate>24.08.2014 03.00.00</WarrantyEndDate> <InvDevice> <Model>Apple iPhone5,2</Model> </InvDevice> </Device> </Items> </Content>
Filters
API queries can be filtered by adding filters parameter in request URL’s query string. Filters specify conditions that must be met by a resource for it to be returned in the response.
Filter must contain at least item’s attribute, comparison operator and value. Table 4 lists supported comparison operators and shows examples of their usage. The syntax for the single value filter expression is as follows:
/Item?filters=<Item.Attribute1> <comparison_operator> <value>
Operator Description
Operator | Description |
---|---|
eq | Equal to |
ne | Not equal to |
gt | Greater than |
ge | Greater than or equal to |
lt | Less than |
le | Less than or equal |
contains | Value contains defined string |
notcontains | Value doesn’t contain defined string |
startswith | Value starts with defined string |
endswith | Value ends with defined string |
isempty | Value is empty |
notisempty | Value is not empty |
LogMeIn Resolve MDM API supports also combining of multiple attribute comparisons with logical operators. Table 5 lists supported logical operators and shows examples of their usage. The syntax for filtering expression with logical operators is as follows:
/API/<Item>?filters=< Attribute1> <comparison_operator1> <value1> <logical_operator> <Attribute2><comparison_operator2> <value2>
Operator | Example |
---|---|
and | PurchaseDate gt '01.01.2013 00.00.00' and InvDevice.Model contains iPhone |
or | InvDevice.Model contains iPhone or InvDevice.Model contains Galaxy |
Precedence of and and or operators is equal and expressions are evaluated from left to right. Brackets can be used to change the order of evaluation of expressions.
Following examples demonstrates the usage of filters setting.
Example: Filtering by one attribute
Get devices which are purchased since January 1, 2013
- Usage: GET /API/Device?auth=1_asdf&filters=PurchaseDate gt ’01.01.2013 00.00.00’
Example: Filtering with brackets
Brackets can be used to change the precedence of AND and OR logical operators.
Get devices which manufacturer is Nokia or Apple and which are purchased since January 1, 2013 or which warranty ends before January 1, 2015.
- Usage: GET /API/Device?auth=1_asdf&filters=(InvDevice.Manufacturer eq Nokia or
InvDevice.Manufacturer eq Apple) and (PurchaseDate gt ‘01.01.2013 00.00.00’ or WarrantyEndDate lt ‘01.01.2015 00.00.00’)
Example: Filtering by values with empty spaces
Filters and filter operators are separated by empty spaces, and therefore, single or double quotation marks are required if the filtered value contains empty spaces.
- Usage: GET /API/Device?auth=1_asdf&filters=Organisation.Name eq 'Research and Development'
If filter string contains single quotation marks double quotation marks must be used around the value and vice versa.
- Usage: GET /API/Device?auth=1_asdf&filters=Organisation.Name eq "Where's My Droid"
OrderBy
Order by query setting can be used to sort the results by one or multiple attributes delimited by commas.
Sorting can be done based on any attribute except attributes that can contain multiple values like device’s InvApplication. Attribute used for sorting must be also defined in query’s select list. Sorting can be done in either ascending (asc) which is the default or descending (desc) order.
Example: Orderby
- Usage: GET /API/Device?auth=1_asdf&orderby=PurchaseDate desc&select=PurchaseDate
- Usage: /API/Device?auth=1_asdf&oderby=User.LastName,User.FirstName&select=User.LastName,User.FirstName
Authentication and security
LogMeIn Resolve MDM API uses authentication key in request’s URL query string for authentication. Authentication key is random string that can be generated from LogMeIn Resolve MDM’s Infrastructure diagram after the API feature has been activated. Keys can also be deleted from the same place when they are not needed anymore. It’s recommended to generate separate authentication keys for each use case. This way administrator can easily manage generated keys.
Auth query string parameter with authentication key as value must be defined in each API request:
Usage: GET /API/Device?auth=1_AaDf234sdf8!4
Available operations
This chapter explains operations available through LogMeIn Resolve MDM API. It supports four different operations: get, create, update and remove. Each operation is explained more comprehensively below in operation specific sections.
Get
Get operation is used to get list of configuration items with selected attributes from LogMeIn Resolve MDM.
Request
Get can be used to get single item with item ID. In this case item ID is defined in the path partition of URL. Another option is to define filters in query string and query returns all items which to filter matches. Refer to URL and query string for information about query options.
GET: /API/Device/1?auth=1_AaDf234sdf8!4&select=User.LastName,User.FirstName, InvDevice.Model
<Content>
<Items count="1">
<Device>
<User>
<Lastname>Straw</Lastname>
<Firstname>Jim</Firstname>
</User>
<InvDevice>
<Model>LGE Nexus 4</Model>
</InvDevice>
</Device>
</Items>
</Content>
Query returns device which ID is 1 which is defined in URL. Query string contains also auth parameter which is used for authentication and select setting which contains list of selected attributes.
GET: /API/Device/1?auth=1_AaDf234sdf8!4&select=User.LastName,User.FirstName,InvDevice.Model&filters=Location.Name eq Helsinki
<Content>
<Items count="2">
<Device>
<User>
<Lastname>Straw</Lastname>
<Firstname>Jim</Firstname>
</User>
<InvDevice>
<Model>samsung GT-I9300</Model>
</InvDevice>
</Device>
<Device>
<User>
<Lastname>Straw</Lastname>
<Firstname>John</Firstname>
</User>
<InvDevice>
<Model>LGE Nexus 4</Model>
</InvDevice>
</Device>
</Items>
</Content>
Query returns devices which location name is Helsinki. This is defined by filters setting in query string. Query string contains also auth parameter which is used for authentication and select setting which contains list of selected attributes.
Response
Get operation returns HTTP status codes defined in Table 6. Response contains found items in XML document. See examples from Request section above.
Status code | Description |
---|---|
200 | Get operation executed successfully |
400 | Bad request, check response’s Error element |
401 | Authentication failed, auth query string parameter is missing or incorrect |
500 | Internal server error has been occurred |
Create
Create operation is used to create new items to LogMeIn Resolve MDM.
Only one item can be created with a single call. This makes error handling and identification of created items easier.
If item already exists i.e. some of item’s attributes that should be unique is already reserved by some existing item, error is returned.
Request
Create uses HTTP POST method and created item is send in requests body.
Created item must be defined in request XML document within Content/Items element. See following examples and XML payload structure for more information about structure of XML document.
Query string setting select can be used to define which created item’s attributes are returned. Otherwise, empty HTTP response is returned if item is created successfully.
POST: /API/User?auth=1_AaDf234sdf8!4&select=ID,Name
<Content>
<Items>
<User>
<Email>jim.straw@trestacom.com</Email>
<Firstname>Jim</Firstname>
<Lastname>Straw</Lastname>
<PhoneNumber>123456789</PhoneNumber>
</User>
</Items>
</Content>
Response
Create operation returns HTTP status codes defined in Table 7. If select clause is added to query, response’s body contains created item with selected attributes. This XML document is formatted same way as responses of get operation.
Status code | Description |
---|---|
200 | All items are created successfully |
202 | Item has been created but there is some warnings, check response’s Warnings element |
400 | Bad request, check response’s /Response/Error element |
500 | Internal server error has been occurred |
<Content>
<Items count="1">
<User>
<ID>1055</ID>
<Name>Straw Jim</Name>
</User>
</Items>
</Content>
Update
Update operation is used to update one or more attributes of a specified item. The item must be specified with the item name and id.
Request
The Update operation is used with the HTTP PUT method by sending a request XML document to the URL which identifies the item to be updated. The Request XML document must contain the updated values of the item’s attributes. The attributes which are not defined within the request are left unmodified.
An attribute can be reset to empty value by adding an empty attribute element to the request.
The query string setting select can be used to define which updated item’s attributes are returned.
PUT: /API/User/1055?auth=1_AaDf234sdf8!4
<Content>
<Items>
<User>
<Middle>M</Middle>
</User>
</Items>
</Content>
The attributes whose type is List, like Device’s ConfigProfileDeployment, are updated with a special method. A new child item is always added to the list when the update command is called. Items can be removed from the list with the Remove command.
The syntax for adding items to the child item list is:
PUT: /API/<Item>/<ItemID>/<ChildItem>/<ChildItemID>
Where:
- <Item> = Target item name
- <ItemID> = Target item’s ID attribute value which uniquely identifies it
- <ChildItem> = Child item attribute name
- <ChildItemID> = Child item’s ID attribute value which uniquely identifies child item In this case, the Update command doesn’t require anything in the HTTP request’s body.
PUT: /API/Device/105/ConfigProfile/5?auth=1_AaDf234sdf8!4
This query will deploy a ConfigProfile with ID = 5 to the Device with ID = 105.
PUT: /API/Device/105/Tag/BYOD Android device?auth=1_AaDf234sdf8!4
This query will add a Tag with Name = BYOD Android device to the Device with ID = 105.
Response
The Update operation’s HTTP status codes are defined in Table 8. If the select clause is added to the query, the response’s body contains the updated item with the selected attributes. This XML document is formatted similarly as the responses of the get operation.
Status code | Description |
---|---|
200 | Item updated successfully |
400 | Bad request, check response’s /Response/Error element |
500 | Internal server error has been occurred |
Remove
Remove operation is used to remove an item from LogMeIn Resolve MDM. Only one item can be removed with a single call and the removed item must be identified with the item ID.
Request
The Remove operation is used with the HTTP DELETE method by sending a request to the URL which identifies the item to be removed.
DELETE /API/User/1055?auth=1_AaDf234sdf8!4
The child item attributes whose type is List, like Device’s ConfigProfileDeployment, are removed with a special method. The remove command is always targeted to parent item and child item is defined in the request’s URL. When removing a single child item, the child item ID must also be defined within the request URL. The syntax is described below:
DELETE: /API/<Item>/<ItemID>/<ChildItem>/<ChildItemID>
- <Item> = Target item name
- <ItemID> = Target item’s ID attribute value which uniquely identifies it
- <ChildItem> = Child item attribute name
- <ChildItemID> = Child item’s ID attribute value which uniquely identifies child item
DELETE /API/Device/105/ConfigProfile/5
This query will remove the ConfigProfile with ID = 5 from the Device with ID = 105.
All List child items are removed when child item ID is not defined in the request URL. In this case syntax looks this:
DELETE: /API/<Item>/<ItemID>/<ChildItem>
DELETE /API/Device/105/ConfigProfile
This query removes all ConfigProfiles from the device with ID = 105.
DELETE /API/Device/105/Tag/BYOD Android device
This query will remove the Tag with Name = BYOD Android device from the Device with ID = 105.
Response
The Remove operation returns an empty HTTP response with status code 200 if the removal succeeds. Otherwise, it returns a response XML document with Error element.
Status code | Description |
---|---|
200 | Removed successfully, response has no content |
400 | Bad request, check response’s /Response/Error element |
500 | Internal server error has been occurred |
XML payload structure
This chapter describes the structure of web service XML payload.
Root element
LogMeIn Resolve MDM API always returns response XML document which contains Content root element.
Attribute | Description |
---|---|
xmlns | Contains XML namespace declaration http://www.mdm.gotoresolve.com/xmlns/api/1.0 |
- xmlns
- This contains namespace declaration for web service responses if usage of namespace is enabled with Usenamespace option. Web service uses default namespace http://www.mdm.gotoresolve.com/xmlns/ws/1.0.
Child elements
This element contains the actual data of the query i.e. a list of items of certain type. Response document’s Items element can contain zero or more items as child elements. Refer to Appendix 1: Supported items and operations to see the list of supported items.
API adds attributes defined in Table 11 to response document’s Items element.
Attribute | Description |
---|---|
count | Total count of items matched to the filters of the query. |
Items element’s child elements are named with queried item’s name, like Device element in Example: Items element in response document. All items have attributes which are represented as child elements under configuration item element, like Location and User elements in the example. Refer to Appendix 2: Supported attributes per item to see the list of available attributes.
Attributes can also be items (so called child items). Typically these child item elements are named with child item name like Device’s Location but names may also differ.
<Content count="24">
<Items>
<Device>
<User>
<ID>1</ID>
<Name>Jim Straw</Name>
<Email>jim.straw@trestacom.com</Email>
<Firstname>Jim</Firstname>
<Lastname>Straw</Lastname>
<PhoneNumber>+358123456798</PhoneNumber>
</User>
<Location>
<ID>3</ID>
<Name>Helsinki</Name>
<FullName>Finland > Helsinki</FullName>
<Parent>
<ID>1</ID>
</Parent>
</Location>
</Device>
</Items>
This element contains description of occurred error. It has following child elements Code (HTTP status code), Description (human readable error description). If error occurs, processing of web service call is aborted immediately. Following example contains Error element.
<Content>
<Error>
<Description>Entity 'Asset' does not have property 'Usr'.</Description>
<Code>400</Code>
</Error>
</Content>
There may also be higher level errors like API call’s URL path is not defined correctly or unsupported HTTP method or content type is used. In this case server returns more generic error message which status code and contents depends on the type of error.
Appendix 1: Supported items and operations
Following table lists supported items and operations which are available for them.
Item Get Create Update Remove
Item | Get | Create | Update | Remove |
---|---|---|---|---|
Device | X | |||
Location | X | |||
Category | X | |||
Organization | X | |||
Enrollment | X | |||
Client | X | |||
Tag | X | |||
User | X | X | X | X |
InvDevice | X | |||
InvOperatorNetwork | X | |||
InvOS | X | |||
InvSIM | X | |||
ReportedLocation | X | |||
NetworkUsage | X | |||
InvStorage | X | |||
InvAndroidDisplay | X | |||
InvAndroidCpu | X | |||
InvAndroidCamera | X | |||
InvAndroidBattery | X | |||
InvAndroidService | X | |||
InvAndroidWiFi | X | |||
MobileSecurity | X | |||
AndroidSecurity | X | |||
iOSSecurity | X | |||
macOSSecurity | X | |||
WindowsPhoneSecurity | X | |||
WindowsSecurity | X | |||
Compatibility | X | |||
InvAndroidSystemUpdate | X | |||
Battery | X | |||
AndroidBattery | X | |||
WindowsBattery | X | |||
CPU | X | |||
PhysicalMemory | X | |||
LogicalDisk | X | |||
BIOS | X | |||
ConfigProfile | X | |||
ConfigProfileDeployment | X |
Appendix 2: Supported attributes per item
Following tables list all available items and their attributes.
Data type column contains the type of attribute. This may contain .Net data type or some of the abbreviations listed in the following table. Child item column contains the item name of the child item. You can find details about the child item with this name from the documentation. Typically Child item name is same as Attribute name but it may also differ. Values column contains allowed attribute values if attribute can have only some of predefined values.
Abbreviation | Meaning | Description |
---|---|---|
C | Child item | Child items are another configuration items which are linked to parent item. Child item column defines the actual type of child item. |
L | List | List typed attributes can contain multiple instances of item defined by Child item column. |
enum | Enumeration | Enumerations can contain some predefined value. Allowed values are listed in Values column. |
Items which supports other than get operation has G (get), C (create), U (update) and R (remove) columns which tell is attribute available for those operations.
AndroidSecurity
Attribute | Data type | Child item | Values |
DeviceAdministrationEnabled | enum | Unknown, Disabled, Enabled | |
InventoryTime | DateTime | ||
PasscodeSufficient | enum | Unknown, No, Yes | |
Rooted | enum | Unknown, NotRooted, Rooted | |
SAFEStatus | enum | Disabled, Enabled, NotSupported, Unknown | |
StorageEncryptionRequired | enum | No, NotSupported, Unknown, Yes | |
SecurityPatchLevel | String |
AndroidBattery
Attribute | Data type | Child item | Values |
---|---|---|---|
BatteryEstimatedChargeRemaining | Int32 | ||
Health | enum | Unknown, Cold, Dead, Good, OverVoltage, Overheat, Unspecified | |
Technology | String | ||
Temperature | Decimal | ||
Voltage | Decimal | ||
InventoryTime | DateTime |
Battery
Attribute | Data type | Child item | Values |
---|---|---|---|
Android | C | InvAndroidBattery | |
Windows | C | InvWindowsBattery |
BIOS
Attribute | Data type | Child item | Values |
---|---|---|---|
Manufacturer | String | ||
SerialNumber | String | ||
ReleaseDate | DateTime | ||
SMBIOSBIOSVersion | String | ||
SoftwareElementID | String | ||
Version | String | ||
InventoryTime | DateTime |
Client
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
Version | String | ||
BuildNumber | String | ||
LostModeStatus | enum | Disabled, Enabled, EnabledWithLocationTracking | |
ManagementType | enum | Unknown, None, AndroidDeviceOwner, AndroidProfileOwner, AndroidDeviceAdministrator, BuiltInMDM, WindowsClient, WindowsBoth, iOSSupervised, iOSUnsupervised, MacBoth |
Compatibility
Attribute | Data type | Child item | Values |
---|---|---|---|
Windows11Compatible | Boolean | ||
Windows11BlockerReason | String |
ConfigProfile
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
ConfigurationType | String | ||
Description | String | ||
Name | String | ||
OSCategory | enum | Android, iOS, WindowsPhone |
ConfigProfileDeployment
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
ConfigProfile | C | ConfigProfile | |
DeploymentType | DateTime | ||
DeploymentTrigger | enum | Administrator, BusinessEnforcement |
CPU
Attribute | Data type | Child item | Values |
---|---|---|---|
Type | enum | ||
Architecture | String | ||
CoreCount | Int32 | ||
MaxFrequency | Int32 | ||
InstructionSet | String | ||
Name | String | ||
Manufacturer | String | ||
Description | String | ||
Frequency | Int32 | ||
DataWidth | Int32 | ||
L2CacheSize | Int32 | ||
InventoryTime | DateTime |
Device
Attribute | Data type | Child item | Values | G | C | U | R |
---|---|---|---|---|---|---|---|
Client | C | Client | x | ||||
Created | DateTime | x | |||||
ConfigProfileDeployment | L | ConfigProfileDeploy ment | x | x | x | ||
ID | Int32 | x | |||||
InvAndroidBattery | C | InvAndroidBattery | x | ||||
InvAndroidCamera | L | InvAndroidCamera | x | ||||
InvAndroidCpu | C | InvAndroidCpu | x | ||||
InvAndroidDisplay | L | InvAndroidDisplay | x | ||||
InvAndroidSensor | L | InvAndroidSensor | x | ||||
InvAndroidService | L | InvAndroidService | x | ||||
InvAndroidWiFi | L | InvAndroidWiFi | x | ||||
InvApplication | L | InvApplication | x | ||||
InvDevice | C | InvDevice | x | ||||
InvIosProfile | L | InvIosProfile | x | ||||
InvCertificate | L | InvCertificate | x | ||||
InvOperatorNetwork | C | InvOperatorNetwork | x | ||||
InvOS | C | InvOS | x | ||||
InvSIM | C | InvSIM | x | ||||
InvStorage | L | InvStorage | x | ||||
LastReported | DateTime | x | |||||
LastReportedDays | Int32 | x | |||||
LastReportedHours | Int32 | x | |||||
LastReportedMinutes | Int32 | x | |||||
Location | C | Location | x | ||||
Modified | DateTime | x | |||||
OnlineStatus | enum | Active, Inactive, Unavailable, Unknown | x | ||||
Organization | C | Organization | x | ||||
Platform | enum | Android, iOS, Unknown, WindowsPhone, WindowsDesktop, macOS | x | ||||
PurchaseDate | DateTime | x | |||||
ReportedLocation | C | ReportedLocation | x | ||||
Security | C | MobileSecurity | x | ||||
Status | enum | Active, AutoGenerated, Deleted, New, Suspended, Unmanaged | x | ||||
Source | enum | MiradoreOnline | x | ||||
Tag | L | Tag | x | ||||
User | C | User | x | ||||
WarrantyEndDate | DateTime | x | |||||
IPAddress | String | x | |||||
MACAddress | String | x | |||||
AndroidID | String | x | |||||
Enrollment | C | Enrollment | x | ||||
Category | C | Category | |||||
LocalIpAddress | String | ||||||
Platform | enum | Unknown, Android, iOS, WindowsPhone, WindowsDesktop, macOS, Other | |||||
LeaseStartDate | DateTime | ||||||
LeaseEndDate | DateTime | ||||||
OSVersionName | String | ||||||
CPU | C | CPU | |||||
PhysicalMemory | L | PhysicalMemory | |||||
LogicalDisk | L | LogicalDisk | |||||
Battery | C | Battery | |||||
BIOS | C | BIOS | |||||
NetworkUsage | L | NetworkUsage | |||||
InvAndroidSystemUpdate | C | InvAndroidSystemUpdate | |||||
InvAppleUpdate | L | InvAppleUpdate | |||||
Compatibility | C | InvDesktopClientDevice |
InvAndroidBattery
Attribute | Data type | Child item | Values |
---|---|---|---|
ChargeLevel | Decimal | ||
Health | enum | Cold, Dead, Good, Overheat, OverVoltage, Unknown, Unspecified | |
InventoryTime | DateTime | ||
Technology | String | ||
Temperature | Decimal | ||
Voltage | Decimal |
InvAndroidCamera
Attribute | Data type | Child item | Values |
---|---|---|---|
FocalLength | Decimal | ||
HasFlash | Boolean | ||
InventoryTime | DateTime | ||
MegaPixels | Decimal |
InvAndroidCpu
Attribute | Data type | Child item | Values |
---|---|---|---|
Architecture | String | ||
CoreCount | Int32 | ||
InstructionSet | String | ||
InventoryTime | DateTime | ||
MaxFrequency | Int32 |
InvAndroidDisplay
Attribute | Data type | Child item | Values |
---|---|---|---|
Density | String | ||
InventoryTime | DateTime | ||
PhysicalSize | Decimal | ||
RefreshRate | Decimal | ||
Resolution | String |
InvAndroidSensor
Attribute | Data type | Child item | Values |
---|---|---|---|
InventoryTime | DateTime | ||
Name | String | ||
PowerUsage | Decimal | ||
Type | enum | Accelerometer, AmbientTemperature, Gravity, Gyroscope, Light, LinearAcceleration, MagneticField, Pressure, Proximity, RelativeHumidity, RotationVector, Temperature, Unknown | |
Vendor | String |
InvAndroidSystemUpdate
Attribute | Data type | Child item | Values |
---|---|---|---|
Status | enum | ||
Type | enum | ||
InventoryTime | DateTime |
InvAndroidService
Attribute | Data type | Child item | Values |
---|---|---|---|
Status | enum | Unknown, Enabled, Disabled, NotSupported | |
Type | enum | Unknown, GPSLocationProvider, LocationService, NFC, Bluetooth, WiFiHotspot, NetworkLocationProvider, PassiveLocationProvider | |
InventoryTime | DateTime |
InvAndroidWiFi
Attribute | Data type | Child item | Values |
---|---|---|---|
InventoryTime | DateTime | ||
SSID | String | ||
Status | enum | Current, Disabled, Enabled, Unknown |
InvApplication
Attribute | Data type | Child item | Values |
---|---|---|---|
Identifier | String | ||
InventoryTime | DateTime | ||
IsLauncher | Boolean | ||
Name | String | ||
OSCategory | enum | Android, iOS, Unknown, WindowsPhone | |
Size | Int64 | ||
Version | String |
InvAppleUpdate
Attribute | Data type | Child item | Values |
---|---|---|---|
Name | String | ||
ProductKey | String | ||
Version | String | ||
RestartRequired | Boolean |
InvCertificate
Attribute | Data type | Child item | Values |
---|---|---|---|
CommonName | String | ||
IsIdentity | Boolean | ||
IssuedBy | String | ||
Subject | String | ||
Thumbprint | String | ||
ValidFrom | DateTime | ||
ValidTo | DateTime |
InvDevice
Attribute | Data type | Child item | Values |
---|---|---|---|
BluetoothMAC | String | ||
DeviceName | String | ||
DeviceType | String | ||
DoNotDisturbActive | Boolean | ||
EASIdentifier | String | ||
IMEI | String | ||
InventoryTime | DateTime | ||
Manufacturer | String | ||
Model | String | ||
Motherboard | String | ||
ProductName | String | ||
SerialNumber | String | ||
SoftwareVersion | String | ||
StoreAccountActive | Boolean | ||
UDID | String | ||
WiFiMAC | String | ||
MarketingName | String | ||
HardwareSerialNumber | String |
InvIosProfile
Attribute | Data type | Child item | Values |
---|---|---|---|
Description | String | ||
Identifier | String | ||
InventoryTime | DateTime | ||
Name | String | ||
RemovalAllowed | Boolean |
iOSSecurity
Attribute | Data type | Child item | Values |
---|---|---|---|
ActivationLock | Boolean | ||
DeviceLocatorService | Boolean | ||
HardwareEncryption | enum | BlockAndFileLevelEncryption, BlockLevelEncryption, FileLevelEncryption, Unknown | |
InventoryTime | DateTime | ||
PasscodeCompliant | Boolean | ||
PasscodeCompliantWithProfiles | Boolean | ||
Supervised | Boolean |
InvOperatorNetwork
Attribute | Data type | Child item | Values |
---|---|---|---|
CellID | Int32 | ||
CurrentCountry | String | ||
CurrentCountryCode | Int32 | ||
CurrentNetwork | String | ||
CurrentNetworkCode | String | ||
CurrentRoamingState | Boolean | ||
DataRoaming | Boolean | ||
HomeCountry | String | ||
HomeCountryCode | Int32 | ||
HomeNetwork | String | ||
HomeNetworkCode | String | ||
HotspotEnabled | Boolean | ||
InventoryTime | DateTime | ||
LocationAreaCode | Int32 | ||
NetworkType | enum | CDMA, EDGE, EHRPD, EVDO_0, EVDO_A, EVDO_B, GPRS, HSDPA, HSPA, HSPAP, HSUPA, IDEN, LTE, ONExRTT, UMTS | |
OperatorName | String |
InvOS
Attribute | Data type | Child item | Values |
---|---|---|---|
Build | String | ||
InventoryTime | DateTime | ||
Language | String | ||
Platform | enum | Android, iOS, Unknown, WindowsPhone, WindowsDesktop, macOS | |
Version | String |
InvSim
Attribute | Data type | Child item | Values |
---|---|---|---|
ICCID | String | ||
IMSI | String | ||
InventoryTime | DateTime | ||
PhoneNumber | String |
InvStorage
Attribute | Data type | Child item | Values |
FreeSpace | Int64 | ||
InventoryTime | DateTime | ||
TotalSpace | Int64 | ||
Type | enum | Internal, Optical, Remote, Removable, Undetermined | |
Volume | String | ||
FreeSpaceGB | Int64 |
WindowsBattery
Attribute | Data type | Child item | Values |
---|---|---|---|
BatteryAcLineStatus | enum | Offline, Online, UnknownStatus | |
BatteryEstimatedChargeRemaining | Int32 | ||
BatteryEstimatedRuntime | Int32 | ||
InventoryTime | DateTime |
WindowsPhoneSecurity
Attribute | Data type | Child item | Values |
---|---|---|---|
InventoryTime | DateTime | ||
StorageCardDisabled | enum | Unknown, No, Yes |
WindowsSecurity
Attribute | Data type | Child item | Values |
---|---|---|---|
InventoryTime | DateTime | ||
SecureBootState | enum | NotSupported, Enabled, Disabled | |
CompliesWithEnterpriseEncryptionPolicy | Boolean | ||
TrustedPlatformModuleSpecificationVersion | String | ||
AntivirusSignatureStatus | enum | NotMostRecentVersion, MostRecentVersion, NotApplicable | |
AntivirusStatus | enum | OnAndMonitoring, Disabled, NotCompletelyMonitoring, TemporarilyNotCompletelyMonitoring, NotApplicable | |
AntispywareSignatureStatus | enum | NotMostRecentVersion, MostRecentVersion, NotApplicable | |
AntispywareStatus | enum | NotMostRecentVersion, MostRecentVersion, NotApplicable | |
FirewallStatus | enum | NotMostRecentVersion, MostRecentVersion, NotApplicable | |
UserAccountControlStatus | enum | AlwaysNotify, NotifyAppChanges, NotifyAppChangesNoDim, NeverNotify | |
OSSoftwareVersion | String | ||
RequireStorageCardEncryption | Int32 | ||
RequireDeviceEncryption | Int32 | ||
EncryptionMethodByDriveType | String | ||
SystemDrivesRequireStartupAuthentication | String | ||
SystemDrivesMinimumPINLength | String | ||
SystemDrivesRecoveryMessage | String | ||
SystemDrivesRecoveryOptions | String | ||
FixedDrivesRecoveryOptions | String | ||
FixedDrivesRequireEncryption | String | ||
RemovableDrivesRequireEncryption | String | ||
AllowWarningForOtherDiskEncryption | Int32 |
Location
Attribute | Data type | Child item | Values |
---|---|---|---|
Created | DateTime | ||
FullName | String | ||
ID | Int32 | ||
Modified | DateTime | ||
Name | String | ||
Parent | C | Location |
Organization
Attribute | Data type | Child item | Values |
---|---|---|---|
Created | DateTime | ||
FullName | String | ||
ID | Int32 | ||
Modified | DateTime | ||
Name | String | ||
Parent | C | Organization |
ReportedLocation
Attribute | Data type | Child item | Values |
---|---|---|---|
City | String | ||
Country | String | ||
FixTime | DateTime | ||
InventoryTime | DateTime | ||
Latitude | String | ||
Longitude | String | ||
StreetAddress | String | ||
ZipCode | String | ||
Provider | enum | Unknown, GPS, Network, Passive | |
NMEATimestamp | DateTime | ||
HDOP | String | ||
VDOP | String | ||
SatelliteCount | Int32 |
NetworkUsage
Attribute | Data type | Child item | Values |
---|---|---|---|
Date | DateTime | ||
NetworkType | enum | Unknown, Mobile, Wifi | |
TotalBytesReceived | Int64 | ||
TotalBytesSent | Int64 | ||
RoamingBytesReceived | Int64 | ||
RoamingBytesSent | Int64 |
User
Attribute | Data type | Child item | Values | G | C | U |
---|---|---|---|---|---|---|
Created | DateTime | |||||
String | x | x | ||||
Firstname | String | x | x | x | ||
ID | Int32 | x | ||||
Lastname | String | x | x | x | ||
Middle | String | x | x | x | ||
Modified | DateTime | |||||
Name | String | x | ||||
PhoneNumber | String | x | x | x | ||
Status | enum | New, Active, Retired, System | x | |||
Source | enum | Unknown, GUI, CSV, API, AD | x |
MobileSecurity
Attribute | Data type | Child item | Values |
---|---|---|---|
PasscodeSet | enum | No, Unknown, Yes | |
EncryptionStatus | enum | Activating, Disabled, Enabled, NotSupported, Unknown | |
Android | C | AndroidSecurity | |
iOS | C | iOSSecurity | |
WindowsPhone | C | WindowsPhoneSecurity | |
macOS | C | macOSSecurity | |
Windows | C | WindowsSecurity |
Tag
Attribute | Data type | Child item | Values |
---|---|---|---|
Name | String |
Enrollment
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
User | C | ||
Created | DateTime | ||
Completed | DateTime | ||
Type | enum | SMSAndEmail, SMS, Email, MasterKey, ShowCredentials, DEP | |
Sender | String |
PhysicalMemory
Attribute | Data type | Child item | Values |
---|---|---|---|
Capacity | Int64 | ||
CapacityGB | Decimal | ||
DataWidth | Int32 | ||
Description | String | ||
DeviceLocator | String | ||
FormFactor | enum | Unknown, Other, SIP, DIP, ZIP, SOJ, Proprietary, SIMM, DIMM, TSOP, PGA, RIMM, SODIMM, SRIMM, SMD, SSMP, QFP, TQFP, SOIC, LCC, PLCC, BGA, FPBGA, LGA | |
Manufacturer | String | ||
PartNumber | String | ||
SerialNumber | String | ||
Speed | Int32 | ||
Tag | String | ||
TotalWidth | Int32 | ||
InventoryTime | DateTime |
Category
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
Name | String |
LogicalDisk
Attribute | Data type | Child item | Values |
---|---|---|---|
ID | Int32 | ||
Drivetype | enum | Unknown, NoRootDirectory, RemovableDisk, LocalDisk, NetworkDrive, CompactDisk, RAMDisk | |
FileSystem | String | ||
FreeSpace | Int64 | ||
FreeSpaceGB | Decimal | ||
Size | Int64 | ||
SizeGB | Decima | ||
VolumeName | String | ||
VolumeSerialNumber | String | ||
ProtectionStatus | enum | Off, On, Unknown | |
EncryptionMethod | enum | Unknown, None, AES_128_WITH_DIFFUSER, AES_256_WITH_DIFFUSER, AES_128, AES_256, HARDWARE_ENCRYPTION, XTS_AES_128, XTS_AES_256 | |
InventoryTime | DateTime |