Device Management

Device Management APIs allow administrators to retrieve a variety of details for devices based on varying search criteria.  These APIs can also register, retire, wipe, lock, unlock, locate, and wakeup a device.  Lastly, labels, countries, and operators can be retrieved from these APIs.

Status and statusCode values

Some Device Management APIs refer to device “status” and “statusCode” in either requests or responses.  Possible values for these variables are listed here:

status:

ACTIVE – Active devices

IENROLL_VERIFIED – Enrollment verified devices for iPhone and WebOS

IENROLL_INPROGRESS – Enrolling devices for iPhone and WebOS

IENROLL_COMPLETE – Enrolled devices for iPhone and WebOS

INFECTED – Virus Infected devices

LOST – Lost devices

RETIRED – Retired devices

VERIFIED – Registration Verified devices

VERIFICATION_PENDING – Verification Pending devices

EXPIRED – Expired devices

WIPED – Wiped devices

statusCode:

ACTIVE - 97

BLOCKED - 98

IENROLL_VERIFIED - 100

IENROLL_INPROGRESS - 101

IENROLL_COMPLETE - 102

INFECTED - 105

LOST - 108

RETIRED - 114

RETIRE_PENDING - 117

VERIFIED - 118

VERIFICATION_PENDING - 112

EXPIRED - 120

WIPED - 119

Compliance, quarantinedStatus, and blockReason values

The APIs which return information about a device include these fields:

<compliance>

<quarantinedStatus>

<blockReason>

The value of each of these fields appears in the response as a decimal number that represents a bitmap value. Each bit in the value represents a reason why the device is not in compliance, has been quarantined, or has been blocked from accessing the ActiveSync server.

The following table shows when each of these fields is non-zero:   

Field

Value

<compliance>

The value is non-zero if the device is not in compliance as specified by its security policy.

<quarantinedStatus>

The value is non-zero if the device is not in compliance as specified by its security policy, and the setting that is not in compliance specifies an action that includes quarantining the device.

<blockReason>

The value is non-zero in the following cases:

The device is not in compliance as specified by its security policy, and the setting that is not in compliance specifies an action that includes blocking access to the ActiveSync server.

The administrator has manually blocked the device’s access to the ActiveSync server. This action is available in Ivanti EPMM Admin Portal, at Users & Devices | ActiveSync Associations.

Note: If multiple reasons apply, the corresponding bit values are summed.  For example, if the device has been compromised (value 1), and its OS version is less than the required version (value 2), then the field has the value 3.   

The following table shows all the possible bitmap values for the <compliance>, <quarantinedStatus>, and <blockReason> fields:                     

Hexadecimal value

Decimal value

Description

0x000000

0

Device is in compliance.

 

Note: Jailbroken Android devices have the compliance value 0, but the security_state field in the Android device details has the value “compromised”.

0x000001

1

Device is compromised.

0x000002

2

OS version is less than the supported OS version.

0x000004

4

Hardware version is not allowed.

0x000008

8

Data Protection is not enabled.

0x000020

32

Device is out of contact.

0x000040

64

App control policy is out of compliance.

0x000080

128

Device exceeds per mailbox limit.

0x000100

256

Device is not registered.

0x000200

512

Device is manually blocked.

0x000400

1024

Exchange Reported.

0x000800

2048

Device administrator is deactivated.

 

Note: On an Android device, the device administrator is deactivated. On iOS 5.0 and higher, the MDM profile has been removed, which deactivates MDM on the device.

0x001000

4096

Disallowed app control policy is out of compliance.

0x002000

8256

Required app control policy is out of compliance.

0x000010

8272

Policy is out of date.

0x004000

16384

Allowed app control policy is out of compliance.

0x008000

32768

User logged out.

0x10000

65536

Attestation Failed.

0x400000

4194304

Unknown reason.

Get Devices by Status

A device within the Ivanti EPMM system travels through a variety of different states, each of which can be retrieved through an API call.  States such as enrollment-in-progress, active, retired, lost, or wiped can be retrieved. This API returns all devices that match the requested status type.  If the status is not specified, all devices with ‘Active’ status are returned.

Examples:

Get all devices with the status ACTIVE:

https://<Ivanti EPMM>/api/v1/dm/devices

Get all devices with the status LOST:

https://<Ivanti EPMM>/api/v1/dm/devices?status=LOST

URI:
https://{host-name}/api/v1/dm/devices

Devices with the input status are returned.

Http Method:

GET

Format:

xml, json

Request:

 

Status

Optional.

See list of valid values above.

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<messages>

 

<message>212 Device(s) returned</message>

Status message.

</messages>

 

<devices>

 

<device id='2’>

 

<uuid>8d711cdc-e93c-49b1-88d6-222f54132445</uuid>

Unique identifier for the device.

<principal>jdoe</principal>

User ID for the user of the device. This corresponds to the user ID in the Ivanti EPMM Admin Portal, as seen in Users & Devices | Users.

<blockReason>0</blockReason>

A bitmap value that lists the reasons, if any, that the device is blocked from accessing the ActiveSync server. The possible values are described in Compliance, quarantinedStatus, and blockReason values

<clientId>1073741831</clientId>

For Ivanti EPMM internal use.

<comment>comment for the device</comment>

Comment entered by the administrator.

<compliance>0</compliance>

A bitmap value that lists the reasons, if any, that the device is out of compliance with its security policy.  The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<countryCode>1</countryCode>

Country code for the device.

<countryId>183</countryId>

Country identifier for the device. Ivanti EPMM assigns this identifier to the country.

<countryName>United States</countryName>

Country name for the device.

<details>

Device details, which consist of key-value pairs. The set of key-value pairs vary by the make, model, and operator of the device. The set shown is only an example.

 

For more information, see Android Details Key-Value Descriptions and iOS Details Key-Value Descriptions.

 

If device registration is pending, then the details section is empty.

<entry>

 

<key>device_model</key>

 

<value>DROIDX</value>

 

</entry>

 

<entry>

 

<key>platform_name</key>

 

<value>2.2</value>

 

</entry>

 

<entry>

 

<key>Client_version</key>

 

<value>4.2.0</value>

 

</entry>

 

</details>

 

<deviceCount>1</deviceCount>

Not used. Always 0.

<easLastSyncAttempt>2012-01-10T20:36:57+00:00</easLastSyncAttempt>

Time of the last attempt the device made to synchronize with Exchange ActiveSync.

<easUuid>4d22d6d7-29dc-4c35-8e67-23dee442cf85</easUuid>

Exchange ActiveSync device id.

<emailAddress>[email protected]</emailAddress>

The user’s email address as entered during registration.

<emailDomain>txt.att.net</emailDomain>

Email domain of the operator for the device.

<employeeOwned>false</employeeOwned>

true -  the employee owns the device.

false - the enterprise owns the device.

 

The value is set during registration and the administrator can change it.

<homeOperator>Verizon</homeOperator>

The service operator for the device when it is not roaming.

<languageCountryId>0<languageCountryId>

The unique identifier for the country associated with the language used on the device. For example, there would be a different ID for a Canadian French language device when compared to a device from France.

 

Ivanti EPMM assigns this identifier to the country.

<languageId>1</languageId>

The unique identifier for the language used on the device.

<lastConnectedAt>2011-07-08T01:52:33+00:00</lastConnectedAt>

The date and time that the device last made successful contact with the Ivanti EPMM server.

 

For iOS devices that have iOS MDM enabled, this value is the time of the last iOS MDM checkin.

<manufacturer>Research In Motion</manufacturer>

The device manufacturer as automatically reported by the device during registration.

<mdmManaged>false</mdmManaged>

Indicates that the MDM profile is enabled on the device. This field applies only to iOS devices. For other devices, the value is always false.

<mdmProfileUrlId></mdmProfileUrlId>

Ivanti EPMM internal ID for its iOS MDM profile information.

<model>8130</model>

The model of the device as reported by the device during registration.

<name>jdoe:Android 4.4:PDA 2</name>

The concatenated name used to identify the device/user combination.

<notifyUser>true</notifyUser>

true indicates the user should be notified via email during registration. This does not control whether Ivanti EPMM sends an SMS message given a valid phone number, which it always does.

 

false indicates the user should not be notified.

 

The notification consists of the principal name, platform, and phone number.

<operator>AT&T</operator>

Service provider for the device. The value PDA indicates no operator is associated with the device.

<operatorId>269</operatorId>

Identifier of the operator for the device. Ivanti EPMM assigns this identifier to the operator.

<phoneNumber>4085551212</phoneNumber>

The phone number entered by the user or administrator during registration.

<pin>2732E6DB</pin>

Unique identification number for a BlackBerry device. Not available for other devices.

<platform>Android 4.4</platform>

String indicating the platform installed on the device.  The string is specified during registration.

<quarantinedStatus>0</quarantinedStatus>

A bitmap value that lists the reasons, if any, that the device is quarantined.  When a device is quarantined, its configurations (that is, profiles) have been removed due to violations with its security policy.

 

The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<regCount>0</regCount>

For Blackberry, after the Ivanti EPMM client is downloaded, the VSP sends the provisioning SMS message to the client. If the client fails to connect, then the VSP resends the message at a scheduled interval. This value indicates how many times the VSP sent the provisioning message to the client.

<regType>DEFAULT</regType>

This value applies only to BlackBerry devices, indicating the registration type configured on Ivanti EPMM. Possible values are:

DEFAULT: Register/Deploy via Ivanti EPMM

BES: Register via Ivanti EPMM, Deploy via BES

BESAUTO: Register/Deploy via BES 5.x

<status>ACTIVE</status>

String indicating the current status of the device with regard to registration and connection.  For valid values, see Status field above.

<statusCode>97</statusCode>

Numeric code defined for the status.  See list of valid values above.

<userDisplayName>Joe Doe</userDisplayName>

The concatenation of the user’s first name and last name as defined during registration.

<userFirstName>Joe</userFirstName>

 

<userLastName>Doe</userLastName>

 

<userSource>76</userSource>

Value 76 for a Local user. 

 

Value 68 for an LDAP user.

 

Note:

76 is the value of ASCII ‘L’, which stands for Local. 

68 is the value of ASCII ‘D’, which stands for Directory (LDAP).

<userUUID>de398fcb-a3a4-412c-a1dd-9be8bd46e728</userUUID>

Internal user ID.

<iPhoneVersion>8J2</iPhoneVersion>

Version number of iPhone.

</device>

 

</devices>

 

</deviceManagementWebServiceResponse>

 

 

 

Get Device details for a specific device

Example:

https://<Ivanti EPMM>/api/v1/dm/devices/12849438-0d74-3c30-6b7d-121a3da8645d

URI:
https://{host-name}/api/v1/dm/devices/{deviceuuid}

Devices with the input status are returned.

Http Method:

GET

Format:

xml, json

Request:

 

Deviceuuid

Unique identifier for the device. Only one uuid can be passed at a time.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

</messages>

Empty if the device specified exists. Otherwise, a <message> element is included indicating that no device was found.

<device id='2’>

 

<uuid>8d711cdc-e93c-49b1-88d6-222f54132445</uuid>

Unique identifier for the device.

<principal>jdoe</principal>

User ID for the user of the device. This corresponds to the user ID in the Ivanti EPMM Admin Portal, as seen in Users & Devices | Users.

<blockReason>0</blockReason>

A bitmap value that lists the reasons, if any, that the device is blocked from accessing the ActiveSync server. The possible values are described in The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<clientId>1073741831</clientId>

For Ivanti EPMM internal use.

<compliance>0</compliance>

A bitmap value that lists the reasons, if any, that the device is out of compliance with its security policy.  The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<countryCode>1</countryCode>

The country code for the device.

<details>

Device details, which consist of key-value pairs. The set of key-value pairs vary by the make, model, and operator of the device. The set shown is only an example.

 

For more information, see Android Details Key-Value Descriptions and iOS Details Key-Value Descriptions.

 

If device registration is pending, then the details section is empty.

<entry>

 

<key>device_model</key>

 

<value>DROIDX</value>

 

</entry>

 

<entry>

 

<key>platform_name</key>

 

<value>2.2</value>

 

</entry>

 

<entry>

 

<key>Client_version</key>

 

<value>4.2.0</value>

 

</entry>

 

</details>

 

<currentPhoneNumber>4085551212</currentPhoneNumber>

The phone number entered by the user or administrator during registration.

<deviceCount>1</deviceCount>

Not used. Always 0.

<emailAddress>[email protected]</emailAddress>

The user’s email address as entered during registration.

<employeeOwned>false</employeeOwned>

true -  the employee owns the device.

false - the enterprise owns the device.

 

The value is set during registration and the administrator can change it.

<languageCountryId>0<languageCountryId>

The unique identifier for the country associated with the language used on the device. For example, there would be a different ID for a Canadian French language device when compared to a device from France.

 

Ivanti EPMM assigns this identifier to the country.

<languageId>1</languageId>

The unique identifier for the language used on the device.

<lastConnectedAt>2011-07-08T01:52:33+00:00</lastConnectedAt>

The date and time that the device last made successful contact with the Ivanti EPMM server.

 

For iOS devices that have iOS MDM enabled, this value is the time of the last iOS MDM checkin.

<manufacturer>Research In Motion</manufacturer>

The device manufacturer as automatically reported by the device during registration.

<mdmManaged>false</mdmManaged>

Indicates that the MDM profile is enabled on the device. This field applies only to iOS devices. For other devices, the value is always false.

<mdmProfileUrlId></mdmProfileUrlId>

Ivanti EPMM internal ID for its iOS MDM profile information.

<model>8130</model>

The model of the device as reported by the device during registration.

<namejdoe:Android 4.4:PDA 2</name>

The concatenated name used to identify the device/user combination.

<notifyUser>true</notifyUser>

true indicates the user should be notified via email during registration. This does not control whether Ivanti EPMM sends an SMS message given a valid phone number, which it always does.

 

false indicates the user should not be notified.

 

The notification consists of the principal name, platform, and phone number.

<operator>PDA</operator>

Service provider for the device. The value PDA indicates no operator is associated with the device.

<operatorId>269</operatorId>

Identifier of the operator for the device. Ivanti EPMM assigns this identifier to the operator.

<platform>Android 4.4</platform>

String indicating the platform installed on the device.  The string is specified during registration.

<quarantinedStatus>0<quarantinedStatus>

A bitmap value that lists the reasons, if any, that the device is quarantined.  When a device is quarantined, its configurations (that is, profiles) have been removed due to violations with its security policy.

 

The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<regCount>0</regCount>

For Blackberry, after the Ivanti EPMM client is downloaded, the VSP sends the provisioning SMS message to the client. If the client fails to connect, then the VSP resends the message at a scheduled interval. This value indicates how many times the VSP sent the provisioning message to the client.

<regType>DEFAULT</regType>

This value applies only to BlackBerry devices, indicating the registration type configured on the VSP. Possible values are:

DEFAULT: Register/Deploy via Ivanti EPMM

BES: Register via Ivanti EPMM, Deploy via BES

BESAUTO: Register/Deploy via BES 5.x.

<status>ACTIVE</status>

String indicating the current status of the device with regard to registration and connection.  For valid values, see Status field above.

<statusCode>97</statusCode>

Numeric code defined for the status.  See list of valid values above.

<userDisplayName>Joe Doe</userDisplayName>

The concatenation of the user’s first name and last name as defined during registration.

<userFirstName>Joe</userFirstName>

 

<userLastName>Doe</userLastName>

 

<userSource>76</userSource>

Value 76 for a local user.

 

Value 68 for an LDAP user.

 

Note:

76 is the value of ASCII ‘L’, which stands for Local. 

68 is the value of ASCII ‘D’, which stands for Directory (LDAP).

<userUUID>de398fcb-a3a4-412c-a1dd-9be8bd46e728</userUUID>

Internal user ID.

</device>

 

</deviceManagementWebServiceResponse>

 

 

 

Android Details Key-Value Descriptions

The following table shows the key-value pairs in the <details> element for Android devices. The set of key-value pairs and the order they appear in the response can vary according to the type of device. Therefore, the table presents the pairs in alphabetical order by the key name.

If a key-value pair is not applicable for a device, typically the HTTP response does not include the pair.

The Ivanti EPMM Admin Guide has more information about fields that are available in the Admin Portal.

Key Name

Key Description

Value

admin_activated

Whether device administrator privilege is activated for the Ivanti EPMM client on the device.

true

false

battery_life

Power remaining in the battery life.

The percentage of power remaining in the battery.

Example: 100

board

The name of the underlying board on the Android device.

A name that the Android OS provides.

Example: venus2

brand

The brand (e.g., carrier) the Android software is customized for, if any.

A string that the Android OS provides.

Example: verizon

c2dmToken

Android C2DM registration ID for the device.

A string of characters

client_name

Name of Ivanti EPMM client application on the device.

Example: com.mobileiron

client_version

Ivanti EPMM client version number running on the device.

Example: 4.5.0

codename

Android platform’s current development codename, or the string "REL" if this is a release build.

Example: REL

country_code

The device’s Mobile Country Codes (MCCs).  MCCs are defined in ITU E.212.

Example for United States: 310

current_mobile_number

Phone number of the device

Example: 6505551212

current_operator_name

Name of current registered operator.

Example: Verizon Wireless

current_SIM_module_number

International Mobile Subscriber Identity number for the device.

Example:

262014530204577

device

The name of the industrial design of the device.

A string that the Android OS provides.

Examples:

cdma_droid2

cdma_shadow

device_id

Unique identifier for the device

Example: ddc865b69c13eeb4

device_manufacturer

Manufacturer of the device.

Example: motorola

device_model

Model of the Android device

Example: DROID2

device_roaming_flag

Whether the device is roaming.

on – The device is roaming.

off -- The device is not roaming.

device_type

Whether the device uses CDMA or GSM technology to transmit voice calls. If the device does not transmit voice calls, this fields whether the device uses CDMA or GSM technology is transmit data.

CDMA or GSM

display_size

Size of the device’s display

Dimensions in pixels, in the format:

<height>X<width>

Example: 854X480

free_media_card_size

Amount of unused storage on the media card on the device.

 

Number in bytes

Example: 2.36M

free_media_card_size_bytes

Amount of unused storage on the media card on the device.

 

Number in bytes

Example: 104857000

free_ram_size

Amount of RAM available on the device.

Number of megabytes, shown with M suffix.

Example: 5.84M

free_ram_size_bytes

Amount of unused RAM memory on the device.

Number in bytes.

Example: 104857000

free_storage_size

Amount of unused storage on the device

Number in bytes

Example: 6489.68M

free_storage_size_bytes

Size of unused storage on the device.

Number in bytes.

Example: 104857000

home_operator

Home service provider for the device

The service provider name, mobile country code and mobile network code of the provider in the following format:

<name>::<MCC+MNC>

Example: Verizon::310004

imei

International Mobile Equipment Identity of the device.

Example: A00000226EBF9F

imsi

International Mobile Subscriber Identity number for the device.

Example:

262018410218015

incremental

Android platform version’s build number.

Example: 110719

lat_long_last_captured_at

The last time the location of the device was recorded.

Specified as seconds since January 1, 1970.

Example: 1324421860972

latitude

Latitude of the device’s location.

Degrees latitude.

Example: 37.396074

locale

Locale for the device

Examples:

en-US

en

longitude

Longitude of the device’s location.

Degrees longitude

Example: -122.056339

mdm_enabled

Whether the Ivanti EPMM client is fully configured on the device.

Note: The Ivanti EPMM client can be installed and running, but still unable to manage the device if it is not fully configured.

true – The Ivanti EPMM client is fully configured.

false – The Ivanti EPMM client is not fully configured.

multi_mdm

Whether multiple Device Admin applications are active on the device.

true – More than one Device Admin application are active.

False – One or zero Device Admin Applications are active.

network_id

CDMA network identification number.

Example: 6

os_version

The Android SDK version code

Example: 10

The value 10 corresponds to Android 2.3.3. Values are defined on http://developer.android.com.

platform_name

Android platform version number on the device.

Example: 2.3.3

processor_architecture

Processor architecture of the device.

armeabi-v7a

prv_bluetooth

Whether the lockdown policy for the device has disabled access to Bluetooth.

ON – Access to Bluetooth is enabled for both audio and data.

AUDIO – Access to Bluetooth is enabled for audio only.

OFF – Access to Bluetooth is disabled.

unsupported – The Ivanti EPMM client does not support enabling or disabling Bluetooth on the device.

prv_camera

Whether the lockdown policy for the device has disabled access to the camera.

ON – Access to the camera is enabled.

OFF – Access to the camera is disabled.

unsupported – The Ivanti EPMM client does not support enabling or disabling the camera on the device.

prv_device_encryption

Whether the security policy for the device has enabled data encryption on the device.

 

on – Device encryption is enabled.

off -- Device encryption is not enabled.

unsupported – The Ivanti EPMM client does not support enabling or disabling data encryption on the device.

prv_exchange_Domain

Domain of the email server of the device’s user.

 

Email server domain.

For example: MOBILEIRON

If the email client is not yet configured, the value is na.

If the email client is not supported by Ivanti EPMM, then the response does not include this key-value pair.

prv_exchange_Server

Email server for the device’s user.

Email server address.

For example: mail.Ivanti.com

If the email client is not yet configured, the value is na.

If the email client is not supported by Ivanti EPMM, then the response does not include this key-value pair.

prv_exchange_UserName

Email user name of the device’s user.

 

Email user name.

For example: [email protected]

If the email client is not yet configured, the value is na.

If the email client is not supported by Ivanti EPMM, then the response does not include this key-value pair.

prv_exchange_UseSSL

Whether email transport uses Secure Socket Layer.

ON – Email uses the Secure Socket Layer. The value is ON if Ivanti EPMM supports the email client and the email client is configured.

If the email client is not yet configured, the value is na.

If the email client is not supported by Ivanti EPMM, then the response does not include this key-value pair.

prv_max_failed_attempts

Maximum number of times the user can enter an incorrect password before the device is wiped.

The maximum number, or the value 0 if no maximum exists.

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_max_idle_time

Maximum time the device can be inactive before the user must re-enter the password.

Number of minutes

Example: 30

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_password

Whether both of the following conditions are true:

    1. A password is mandatory for the user to access the device, as specified in the device’s security policy.
    2. The device is compliant with the security policy.

ON – Both conditions are true.

OFF – One or both of the conditions are not true.

prv_password_expiration_timeout

Numbers of days after which the device’s password will expire.

 

The number of days, or the value unsupported if a password is optional.

Example: 30

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_password_history_length

Number of passwords remembered to ensure that the device’s user define a different password.

 

For example, the value 4 prevents the user from repeating a password for the next four password changes.

A number, or the value unsupported if a password is optional.

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_password_length

Minimum length for the device’s password.

Number between 1 and 10, or -1 which indicates the password has no minimum length.

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_password_minimum_symbols

Minimum number of special

characters that must be included in a password. Applicable only to Android 3.0 and higher.

A number or the value unsupported if no minimum is required.

This value is applicable only if prv_password_type indicates that a password is mandatory.

prv_password_type

Whether the device’s password is mandatory, and whether it must be restricted to simple numeric input, alphanumeric characters,

or has no restrictions.  The security policy assigned to the device specifies the password type.

0 –  password is mandatory and is restricted to alphanumeric characters.

1 – password is mandatory and is restricted to simple numeric characters.

2 – password is mandatory and has no character restrictions.

-1 – password is optional.

prv_sd_encryption

Whether the security policy for the device has enabled encrypting the contents of the SD (Secure Data card) on the device.

on – SD encryption is enabled.

off -- SD encryption is not enabled.

unsupported – The Ivanti EPMM client does not support enabling or disabling SD encryption on the device.

prv_sdcard

Whether the lockdown policy for the device has disabled access to the SD card.

ON – Access to the SD card is enabled.

OFF – Access to the SD card is disabled.

unsupported – A lockdown policy is not applied to this device.

prv_vpn_servers

A list of VPN servers that the device can access.

List of semi-colon-separated VPN servers, each given as an IP address, a host name, or a URL.

The value is na if the list is empty.

prv_wifi

Whether the lockdown policy for the device has disabled access to wireless LANs.

ON – Access to wireless LANs is enabled.

OFF – Access to wireless LANs is disabled.

unsupported – The Ivanti EPMM client does not support enabling or disabling access to wireless LANs on the device.

prv_wlan_ssids

Wireless local area network Service Set Identifiers for all wireless LANs configures on the device.

List of identifiers, separated by semi-colons.

If none, then the value is na.

Example: Ivanti-Guest;Ivanti-Test

registration_imsi

International Mobile Subscriber Identity number for the device.

Example: 262073991646313

registration_operator_name

The name of the service provider for the device.

Example: Verizon

regUuid

Device’s unique ID.

Example: ddc865b69c13eeb4

Samsung_DM

Samsung device information for Samsung devices that support Samsung MDM APIs.

Example:

FW: Key2,1 SW:1.0

security_state

Indicates whether the device has been compromised. A compromised Android device means that the device has been rooted, which means that an application has root access to the device’s file system.

Ok – The device has not been compromised.

Compromised – The device has been compromised.

SIM_module_number

International Mobile Subscriber Identity number for the device.

Example: IMSI:3104105000000000

system_id

CDMA System Identification number

Example: 40

total_media_card_size

Amount of storage on the media card on the device.

Number of megabytes, shown with M suffix.

Example: 7574.19M

total_media_card_size_bytes

Amount of storage on the media card on the device.

Number in bytes

Example: 785037745

total_ram_size

Amount of RAM memory on the device.

Number of megabytes, shown with M suffix.

Example: 475.93M

total_ram_size_bytes

Amount of RAM memory on the device.

Number in bytes

Example: 504857000

total_storage_size

Amount of storage on the device.

Number of megabytes, shown with M suffix.

Example: 6700.98M

total_storage_size_bytes

Amount of storage on the device.

Number in bytes

Example: 104857000

usb_debugging

Indicates whether USB debugging is enabled on the device.

ON – USB debugging is enabled.

OFF – USB debugging is disabled.

 

wifi_mac_addr

Wi-Fi MAC address of the device.

Example: f87b7a29838f

 

iOS Details Key-Value Descriptions

The following table shows the key-value pairs in the <details> element for iOS devices. The set of key-value pairs and the order they appear in the response vary according to the type of device, such as iPhone or iPad. Therefore, the table presents the pairs in alphabetical order by the key name.

Note: In most cases, key names that have an underscore, such as security_state or Client_build_date, contain information that the device’s Ivanti EPMM client provides. Key names without underscores, such as allowUntrustedTLSPrompt or maxGracePeriod, contain information that the device’s operating system provides.

Key Name

Key Description

Value

allowAppInstallation

 

 

Whether installation of applications is allowed.

 

Example: false

 

allowCloudBackup

Whether backing up the device to iCloud is allowed.

Availability: iOS 5.0 and later.

true – Backing up to iCloud is allowed.

false – Backing up to iCloud is not allowed.

allowCloudDocumentSync

When false, document and key-value syncing to iCloud is disabled.

Example: false

allowExplicitContent

Whether explicit music or video content purchased from the iTunes Store is hidden. Content is marked as explicit by content providers when sold through the iTunes Store.

true – Explicit content is not hidden.

false – Explicit content is hidden.

allowInAppPurchases

Whether In-App purchases are allowed.

true – In-App Purchases are allowed.

false - In-App Purchases are not allowed.

allowiTunes

Whether the iTunes Music Store is allowed on the device.

true – iTunes is allowed.

false - iTunes is not allowed.

allowMultiPlayerGaming

Whether multiplayer gaming is allowed.

true – Multiplayer gaming is allowed.

false - Multiplayer gaming is not allowed.

allowPhotoStream

Indicates whether the device’s Photo Stream is allowed on the device.

Availability: iOS 5.0 and later.

true – Photo Stream is allowed.

false – Photo Stream is not allowed.

allowUntrustedTLSPrompt

When false, automatically rejects untrusted HTTPS certificates without prompting the user.

 

Availability: iOS 5.0 and later.

true or  false

allowVideoConferencing

Whether videoconferencing is allowed on the device.

true - Videoconferencing is allowed.

false – Videoconferencing is not allowed.

allowVoiceDialing

Whether voice dialing is allowed when the device is locked.

true – Voice dialing is allowed when the device is locked.

false - Voice dialing is not allowed when the device is locked.

allowYouTube

Whether the YouTube application is allowed on the device.

true - YouTube is allowed.

false – YouTube is not allowed.

apnsToken

The device’s APNs (Apple Push Notification service) token.

Example:

5c7b0866d6d068f8b4015690b83a6d1c00fb9484bdb00ea40d926bbade28de5f

AvailableDeviceCapacity

Floating-point gibibytes (base-1024 gigabytes).

Example: 13.765106201171875

Battery Level

Floating-point percentage expressed as a value between 0.0 and 1.0, or -1.0 if battery level cannot be determined.

 

Availability: iOS 5.0 and later.

Example: 0.10000000149011612

battery_life

Power remaining in the battery life.

The percentage of power remaining in the battery.

Example: 30

BluetoothMAC

Bluetooth MAC address.

Example: B8FF617F7927

BuildVersion

The iOS build number (8A260b, for example).

Example: 8J3

CarrierSettingsVersion

Version of the currently-installed carrier settings file.

Example: 11.0

CellularTechnology

Returns the type of cellular technology.

Availability: iOS 4.2.6 and later.

Example: GSM

CheckOut Received

Ivanti EPMM has received a checkout message from the device. This message indicates that the MDM profile was removed from the device.

true – Ivanti EPMM has received a checkout message.

false – Ivanti EPMM has not received a checkout message.

Client_build_date

Build date of the Ivanti EPMM client.

Example: Apr 8 2011 12:02:24

client_name

Name of Ivanti EPMM client application on the device.

Example: com.mobileiron.phoneatwork

Client_version

Ivanti EPMM client version number running on the device.

Example: 4.5.12.33698

country_code

The device’s Mobile Country Codes (MCCs).  MCCs are defined in ITU E.212 .

Example for United States: 310

Current MCC

The device’s Mobile Country Codes (MCCs).  MCCs are defined in ITU E.212 .

Example for United States: 310

Current MNC

Current Mobile Network Code. If the device is not roaming, this is the same as the SIM MNC.

Example: 00

DataRoamingEnabled

Whether Data Roaming is enabled.

Example: false

device_id

The International Mobile Equipment Number for an iPhone.

Example: IMEI:012537000804721

device_manufacturer

Device manufacturer. For iOS devices, the value is always Apple.

Example: Apple

device_model

Model of the iOS device.

Examples:

iPad

iPhone 4

device_type

Whether the device uses CDMA or GSM technology to transmit voice calls. If the device does not transmit voice calls, this field indicates whether the device uses CDMA or GSM technology to transmit data.

CDMA or GSM

Example: GSM

DeviceCapacity

Floating-point gibibytes (base-1024 gigabytes).

Example: 14.020126342773438

DeviceCompromised

Whether the device is compromised.

true – The device is compromised.

false – The device is not compromised.

DeviceName

The name given to the device via iTunes.

Example: Joe B’s iPad

forceEncryptedBackup

Whether the device forces encrypted backups.

true or false

free_storage_size_byte

Size of unused storage on the device.

 

Number in bytes.

Example: 14780170240.000000000000000

HardwareEncryptionCaps

Describes the underlying hardware encryption capabilities of the device.

 

The value represents a bit field with following meanings:

1 – block-level encryption

2 – file-level encryption

Therefore, because these are bit field values, the value 3 means both block-level and file-level encryption.

imei

The device’s IMEI number. Ignored if the device does not support GSM.

Example: 011981001429081

ImeiOrMeid

The device’s MEID number. Ignored if the device does not support CDMA.

Example: 01 198100 142908 1

imsi

International Mobile Subscriber Identity number for the device.

The IMSI or the value na if the device has no IMSI. 

Example: 262073947704030

iOSBackgroundStatus

The status of background location multitasking on the device.

0 – The device supports background location multitasking, and the user has enabled location services.

1 – The device supports background location multitasking, but the user has disabled location services.

2 – Background multitasking has been disabled by the privacy policy applied to the device.

3 – The device hardware does not support background multitasking.

4 – The iOS version is earlier than 4.0, and therefore does not support background multitasking.

Example: 3

ip_address

IP address of the device.

Example: 192.168.1.174

The response includes this field only if the device had connected to a WIFI network. However, this field does not indicate whether the device is currently connected to a WIFI network.

iPhone ICCID

The ICC identifier for the installed SIM card.

Example: 8949 2260 7349 2040 105

iPhone IMEI

International Mobile Equipment Identity of the device.

Example: 01 253700 080472 1

 

iPhone MAC_ADDRESS_EN0

WIFI MAC address of device.

Example: b8:ff:61:7f:79:26

iPhone PRODUCT

The model code for the device.

Examples:

iPad

iPhone 4

iPhone UDID

The unique device identifier (UDID) of the iOS device.

Example: 81a3379d884f1bd9f1b0ce9b340358288081f7a1

 

iPhone VERSION

The iOS build number of the iOS version that the device is running.

Example: 8J3

it_policy_result

Not used.

Not used.

lat_long_last_captured_at

The last time the location of the device was recorded.

Specified as seconds since January 1, 1970.

Example: 1325108114776

latitude

Latitude of the device’s location.

Degrees latitude.

Example: 50.645397

locale

Locale for the device

Examples:

en-US

en

longitude

Longitude of the device’s location.

Degrees longitude.

Example: 7.943374

maxGracePeriod

Maximum grace period, in minutes, to unlock the phone without entering a passcode. The value 0 means no grace period is allowed; a passcode is required immediately.

Example: 900

 

maxInactivity

Number of minutes for which the device can be idle (without being unlocked by the user) before it gets locked by the system. Once this limit is reached, the device is locked and the passcode must be entered.

Example: 300

minLength

Minimum overall length of the passcode.

Example: 4

mobile_number

Phone number of the device.

The mobile number, or the value (null) if the device has no mobile number.

Example:

+491718169911

Model

The device’s model number.

Examples:

MC820LL

MC603DN

ModelName

Name of the device model.

Examples:

iPad

iPhone

ModemFirmwareVersion

The baseband firmware version.

Example: 05.16.05

os_version

The version of iOS that the device is running.

Example:

iPhone OS 4.3.3 (8J3)

iPhone OS 5.0.1 (9A405)

OSVersion

The version of iOS that the device is running.

Example: 4.3.3

PasscodeIsCompliant

Set to true if the user's passcode is compliant with all

requirements on the device, including Exchange and other accounts.

true or false

PasscodeIsCompliantWithProfiles

Set to true if the user's passcode is compliant with requirements from profiles.

Example: true

PasscodePresent

Set to true if the device is protected by a passcode.

true or false

platform_name

For all iOS devices, this field has the value iPhone.

Example: iPhone

platform_type

Either iPad or iPhone.

Examples:

iPad

iPhone

processor_architecture

For iOS devices, the value is always ARM.

Example: ARM

ProductName

The model code for the device.

Examples:

iPad1,1

iPhone3,1

ratingApps

Maximum rating for apps on the device, according to Apple’s ranking of apps.

Example: 1000

 

ratingMovies

Maximum rating for movies on the device, according to Apple’s ranking of movies.

Example: 1000

ratingTVShows

Maximum rating for TV shows on the device, according to Apple’s ranking of TV shows.

Example: 1000

registration_imsi

International Mobile Subscriber Identity number for the device.

Example: (null)

registration_operator_name

The name of the service provider for the device.

The name of the service provider, or (null) if not applicable.

Example: AT&T

safariAcceptCookies

Indicates Safari’s setting to accept cookies.

0 - Never

1 - From visited

2 - Always

safariAllowPopups

Indicates whether Safari is set to allow pop-ups.

 

true – popups are allowed.

false – popups are not allowed.

safariForceFraudWarning

Indicates whether Safari is set to enable fraud warning.

 

true – Fraud warning is enabled.

false – Fraud warning is not enabled.

security_reason_code

Not used.

Not used.

security_state

Indicates whether the device has been compromised.

0 – The device has been compromised.

1 – The device has not been compromised.

SerialNumber

The device’s serial number.

Example: V5046DGHZ38

signal_strength

The signal strength on the device.

A number representing the signal strength, given in dBm.

SIM MCC

Home Mobile Country Code (numeric string).  MCCs are defined in ITU E.212 .

Example for United States: 310

SIM MNC

The Mobile Network Code of the SIM card on the device.

Note: This field contains a numeric MNC only if the network is GSM. For CDMA networks, this field contains an abbreviation of the carrier name, such as VZW or SPR, for Verizon and Sprint.

Example:

01

07

SIMCarrierNetwork

Name of the home carrier network.

Example:  Telekom.de

Subscriber Carrier Network

Name of the home carrier network. (Replaces

SIMCarrierNetwork.)

 

Availability: iOS 5.0 and later.

Example: o2-de

total_storage_size_bytes

Amount of storage on the device.

Number in bytes.

Example: 15053996032.000000536870912

Voice Roaming Enabled

Whether Voice Roaming is enabled.

Example: true

WiFiMAC

Wi-Fi MAC address.

Example: B8FF617F7926

Exporting Device Information to a CSV

To export device information to a CSV, use the following URI:

https://{host-name}/api/v1/dm/devices.csv

Note: No support is available for exporting device information for Exchange ActiveSync (EAS) devices to a CSV. The request https://{host-name}/api/v1/eas/devices.csv is not supported.

The following fields are exported:

Operator

Country

Device UUID

Phone Number

Principal

Name

Platform

Manufacturer

Model

Email Address

Status Code

Employee Owned

Compliance

Quarantine Status

IMSI

IMEI

UDID

Client Version

MDM Enabled

Serial Number

Last Connected At

Active Sync UUID

Active Sync Last Sync Attempt

Wi-Fi MAC Address

Device Encryption

Last MDM Check-In

Last Security State Changed On

Registered On

Get Device Details for a Phone Number/User/Label/Wi-Fi MAC Address

Device details such as manufacturer, model, OS, status, and registered email address can be retrieved in multiple ways using an API.  Search requests can be made by phone number, user ID, or label.  A single user may be assigned multiple devices, in which case a list of devices could be returned for a matching user ID.  Given a phone number in the request, the API returns the device details for the pairing of user and phone number. Given a label in the request, the API returns the device details for all devices assigned to that label. The details returned depend on what the device reports; different devices may return different information. This API applies only to registered devices.

Examples:

Get the device details for the device that has a specified phone number:

https://<Ivanti EPMM>/api/v1/dm/phones/4155551212

Get the device details for the devices that have the specified phone numbers:

https://<Ivanti EPMM>/api/v1/dm/phones/6505551212,4155551212

Get the device details for the devices belonging to the specified user:

https://<Ivanti EPMM>/api/v1/dm/users/jdoe

Get the device details for the devices assigned to a specific label:

https://<Ivanti EPMM>/api/v1/dm/labels/android

Get the device details for the device having a specific Wi-Fi MAC address:

https://<Ivanti EPMM>/api/v1/dm/devices/mac/38AA3C62BFAD

1. URI:
https://{host-name}/api/v1/dm/phones/{phone#}

Device details of the input phone number is returned.

Http Method:

GET

Format:

xml, json

Request:

 

phoneNumber

Required.
This can be multiple, comma-separated phone numbers. Example:
4085551212,6505551212

 

 

2. URI:
https://{host-name}/api/v1/dm/users/{username}

Device details of all devices registered to the input username will be returned.

Http Method:

GET

Format:

xml, json

Request:

 

userName

Required. Device unique login user name.

 

 

3. URI:
https://{host-name}/api/v1/dm/labels/{labelname}

Device details of all devices assigned to the input labelname will be returned.

Http Method:

GET

Format:

xml, json

Request:

 

labelName

Required. Unique label name.

 

 

4. URI:
https://{host-name}/api/v1/dm/devices/mac/{macaddress}

Device details of the device associated with the input Wi-Fi MAC address.

Http Method:

GET

Format:

xml, json

Request:

 

macAddress

Required.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<phoneNumber>14085551212</phoneNumber>

Phone numbers from the request. Included in response in these two cases:

- only one phone number was in the request.

- the request specified more than one phone number, and a problem occurred so that no device details are included in the response.

 

Note: If the request specified a user name or a label name, they are not repeated at the beginning of the response.

 

<messages>

 

<message>212 Device(s) returned</message>

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

 

Note: If the request specified one valid phone number, the <messages> element is empty.

</messages>

 

<devices>

 

<device id=’2’>

Device identifier.

<uuid>8d711cdc-e93c-49b1-88d6-222f54132445</uuid>

Unique identifier for the device.

<principal>jdoe</principal>

User ID for the user of the device. This corresponds to the user ID in the Admin Portal, as seen in Users & Devices | Users.

<blockReason>0</blockReason>

A bitmap value that lists the reasons, if any, that the device is blocked from accessing the ActiveSync server. The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<clientId>1073741831</clientId>

For Ivanti EPMM internal use.

<compliance>0</compliance>

A bitmap value that lists the reasons, if any, that the device is out of compliance with its security policy.  The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<countryCode>1</countryCode>

The country code for the device.

<countryId>183</countryId>

Country identifier for the device. Ivanti EPMM assigns this identifier to the country.

<countryName>United States</countryName>

 

<details>

Device details, which consist of key-value pairs. The set of key-value pairs vary by the make, model, and operator of the device. The set shown is only an example.

 

For more information, see Android Details Key-Value Descriptions and iOS Details Key-Value Descriptions.

 

If device registration is pending, then the details section is empty.

                <entry>

 

                    <key>total_ram_size</key>

 

                    <value>109.74M</value>

 

                </entry>

 

                <entry>

 

                <entry>

 

                    <key>device_model</key>

 

                    <value>SGH-i617</value>

 

                </entry>

 

                <entry>

 

                    <key>platform_name</key>

 

                    <value>Windows Mobile 6.1 Standard</value>

 

                </entry>

 

</details>

 

<deviceCount>0</deviceCount>

Not used. Always 0.

<emailAddress>[email protected]</emailAddress>

The user’s email address as entered during registration.

<emailDomain>mydomain.com</emailDomain>

Not used at this time.

<employeeOwned>false</employeeOwned>

true -  the employee owns the device.

false - the enterprise owns the device.

 

The value is set during registration and the administrator can change it.

<homeOperator>Verizon</homeOperator>

The service operator for the device when it is not roaming.

<languageCountryId>183</languageCountryId>

The unique identifier for the country associated with the language used on the device. For example, there would be a different ID for a Canadian French language device when compared to a device from France.

 

Ivanti EPMM assigns this identifier to the country.

<languageId>1</languageId>

The unique identifier for the language used on the device.

<lastConnectedAt>2011-07-08T01:52:33+00:00</lastConnectedAt>

The date and time that the device last made successful contact with the Ivanti EPMM server.

 

For iOS devices that have iOS MDM enabled, this value is the time of the last iOS MDM checkin.

<manufacturer>Research In Motion</manufacturer>

The device manufacturer as automatically reported by the device during registration.

<mdmManaged>false</mdmManaged>

Indicates that the MDM profile is enabled on the device. This field applies only to iOS devices. For other devices, the value is always false.

<mdmProfileUrlId></mdmProfileUrlId>

Ivanti EPMM internal ID for its iOS MDM profile information.

<model>8130</model>

The model of the device as automatically reported by the device during registration.

<name>jdoe:Android 4.4:PDA 2</name>

The concatenated name used to identify the device/user combination.

<notifyUser>true</notifyUser>

true indicates the user should be notified via email during registration. This does not control whether Ivanti EPMM sends an SMS message given a valid phone number, which it always does.

 

false indicates the user should not be notified during registration.

 

The notification consists of the principal name, platform, and phone number.

 

 

<operator>Verizon</operator>

Service provider for the device. The value PDA indicates no operator is associated with the device.

<operatorId>4195</operatorId>

Identifier of the operator for the device. Ivanti EPMM assigns this identifier to the operator.

<phoneNumber>4085551212</phoneNumber>

The phone number entered by the user during registration.

<platform>Android 4.4</platform>

String indicating the platform installed on the device.  The string is specified during registration.

<quarantinedStatus>0</quarantinedStatus>

A bitmap value that lists the reasons, if any, that the device is quarantined.  When a device is quarantined, its configurations (that is, profiles) have been removed due to violations with its security policy.

 

The possible values are described in Compliance, quarantinedStatus, and blockReason values.

<regCount>0</regCount>

For Blackberry, after the Ivanti EPMM client is downloaded, the VSP sends the provisioning SMS message to the client. If the client fails to connect, then the VSP resends the message at a scheduled interval. This value indicates how many times the VSP sent the provisioning message to the client.

<regType>DEFAULT</regType>

This value applies only to BlackBerry devices, indicating the registration type configured on the VSP. Possible values are:

DEFAULT: Register/Deploy via Ivanti EPMM

BES: Register via Ivanti EPMM, Deploy via BES

BESAUTO: Register/Deploy via BES 5.x.

registeredAt

Lists the date and time of device registration.

<status>ACTIVE</status>

String indicating the current status of the device with regard to registration and connection.  See list of valid values above.

<statusCode>97</statusCode>

Numeric code defined for the status.  See list of valid values above.

<userDisplayName>Joe Doe</userDisplayName>

The concatenation of the user’s first name and last name as defined during registration.

<userFirstName>Joe</userFirstName>

 

<userLastName>Doe</userLastName>

 

<userUUID>de398fcb-a3a4-412c-a1dd-9be8bd46e728</userUUID>

Internal user ID.

 

 

</device>

 

</devices>

 

</deviceManagementWebServiceResponse>

 

 

 

Register a Device

This API registers a device with Ivanti EPMM. Registering or enrolling a device designates it for management in Ivanti EPMM.  The action of registering a device accomplishes the following:

Activates a user associated with the device.

Makes the device known to the Ivanti EPMM system.

Downloads the Ivanti EPMM Client to the device

Completes an initial scan of the device and synchronizes it to Ivanti EPMM.

You can use this API with ServiceNow.

Examples:

https://<Ivanti EPMM>/api/v1/dm/register?phoneNumber=4155551212&userId=jdoe&platform=A&userFirstName=Joe&userLastName=Doe&[email protected]&notifyUser=True&notifyuserbysms=True&countrycode=1&operator=Verizon

Notice in the following example that if the deviceType is PDA, then the phoneNumber value can be PDA:

https://<Ivanti EPMM>/api/v1/dm/register?phoneNumber=PDA&deviceType=PDA&userId=miadmin&userFirstName=Jane&userLastName=Doe&[email protected]&countrycode=33&importUserFromLdap=False&notifyUser=True&notifyuserbysms=True&platform=I

URI:

https://{host-name}/api/v1/dm/register/

Register a device.

Http Method:

PUT

Format:

xml, json

Request:

 

phoneNumber

Required for all device types except for PDA. If the device type is PDA, then you can enter PDA as the phone number value. This may improve performance over supplying a bogus phone number.

userId

Required.

operator

String indicating operator.  This field will be updated after registration if Ivanti EPMM can find the operator based on the phoneNumber entry.

isEmployeeOwned

True indicates the device is owned by the employee.

False indicates it is owned by the company.  Default is false.

platform

Required. Platform or operating system of the device.

Valid values:

A- Android

I – iOS

E – Windows

M – Windows Phone devices (WP8, WP8.1)

L- Mac OS X

deviceType

Device type can be a phone or PDA. 

Valid values : Phone, PDA

If device is a PDA, then phone number is optional and you can enter PDA as the phone number value, too.

importUserFromLdap

True – import the matching user from LDAP.

False –create a local user.

 

If a local user does not exist with the input userid, then a new local user is created. For local users, first name, last name, and email address are required.

 

Ivanti EPMM sets the password for a new local user to the userid.

userFirstName

Required for local user. User’s first name.

userLastName

Required for local user. User’s last name.

userEmailAddress

Required for local user. User’s email address.

notifyUser

True indicates user should be notified of registration by email. False indicates user should not be notified.

notifyuserbysms

True indicates user should be notified of registration by SMS. False indicates user should not be notified by SMS.

countryCode

Required. Country code of the operator.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<phoneNumber>14085551212</phoneNumber>

Phone number registered.

<registration>

 

<messages/>

 

<deviceUuid>caba40e7-f56b-44aa-ac70-79e32e91adf8</deviceUuid>

Alpha-numeric string that uniquely identifies the device.

<messages/>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

<status>SUCCESS</status>

See “Status and statusCode values”.

<passcode>63460</passcode>

5-digit numeric passcode needed during registration validation.  If the passcode is not applicable for the operating system, it will be empty.

<passcodeTTL>120</passcodeTTL>

Number of hours the passcode is valid.

<registrationUrl>http://app16.Ivanti.com:8080/v/75b13</registrationUrl>

URL provided to the user.  User enters a passcode to verify the device registration and the client begins to download.

</registration>

 

</deviceManagementWebServiceResponse>

 

 

 

Retire a Device

This API retires a device.  Devices are retired based on a unique device ID (uuid).

You can use this API with ServiceNow.

Examples:

https://<Ivanti EPMM>/api/v1/dm/devices/retire/ee8198d9-5d79-4961-94c4-e21bf04b2467?Reason=User%20replaced%20device

 

 

https://<Ivanti EPMM>/api/v1/dm/devices/retire/mac/38AA3C62BFAD?Reason=User%20replaced%20device

1. URI:
https://{host-name}/api/v1/dm/devices/retire/{deviceuuid}

Device with the input device uuid is retired

Http Method:

PUT

Format:

xml, json

Request:

 

Device uuid

Required. Unique ID of the device. This ID can be retrieved in the response of other API calls, such as Device Registration or Get Device Details.

Reason

Free form text field (512 character limit) to display reason why the device is being retired.

 

 

2. URI:
https://{host-name}/api/v1/dm/devices/retire/mac/{macaddress}

Device with the input Wi-Fi MAC address is retired.

Http Method:

PUT

Format:

xml, json

Request:

 

macAddress

Required.

Reason

Free form text field (512 character limit) to display reason why the device is being retired.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<messages>

 

<message> Device is retired successfully.</message>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

<deviceUuid>caba40e7-f56b-44aa-ac70-79e32e91adf8</deviceUuid>

Unique device ID.

< /deviceManagementWebServiceResponse>

 

 

 

Lock a Device

This API locks a device, which typically forces the user to enter a passcode (either a user-generated or Ivanti EPMM-generated password) to access the device and prevents the user from reversing this restriction.  Devices are locked based on unique device ID (uuid).  As all mobile operating systems behave differently, refer to the Administration Guide for details on lock support.

You can use this API with ServiceNow.

Examples:

https://<Ivanti EPMM>/api/v1/dm/devices/lock/ee8198d9-5d79-4961-94c4-e21bf04b2467?Reason=User%20lost%20device

 

https://<Ivanti EPMM>/api/v1/dm/devices/lock/mac/38AA3C62BFAD?Reason=User%20lost%20device

1. URI:
https://{host-name}/api/v1/dm/devices/lock/{deviceuuid}

Device with the input device uuid is locked.

Http Method:

PUT

Format:

xml, json

Request:

 

Device UUID

Required. Unique ID of the device. This ID is sent in the response of the Registration API.

Reason

Required. Free form text field (512 character limit) to display reason why the device is being locked.

 

 

1. URI:
https://{host-name}/api/v1/dm/devices/lock/mac/{macaddress}

Device with the Wi-Fi MAC address is locked.

Http Method:

PUT

Format:

xml, json

Request:

 

macAddress

Required.

Reason

Required. Free form text field (512 character limit) to display reason why the device is being locked.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<messages>

 

<message>Device is locked successfully.</message>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

 

 

<deviceUuid>caba40e7-f56b-44aa-ac70-79e32e91adf8</deviceUuid>

Unique device ID.

 

This field is not included for Android and iOS devices.

<unlockpasscode>12345</unlockpasscode>

Passcode to unlock the device.  If this is missing, then the device was most likely locked with the user-set passcode.

 

This field is not included for Android and iOS devices.

< /deviceManagementWebServiceResponse >

 

 

 

Unlock a Device

This API unlocks a device.

On Android and iOS devices, unlocking the device clears its passcode.

On Blackberry devices, when a device without a user-generated passcode is locked, a special Ivanti EPMM passcode must be generated and shared with the user to unlock the device.  A special passcode may be generated based on unique device ID (uuid). For those device, this API returns the unlock passcode.

Refer to the Ivanti EPMM Administration Guide for details on unlock support.

You can use this API with ServiceNow.

Examples:

https://<Ivanti EPMM>/api/v1/dm/devices/unlock/ee8198d9-5d79-4961-94c4-e21bf04b2467?Reason=User%20forgot%20password

https://<Ivanti EPMM>/api/v1/dm/devices/unlock/mac/38AA3C62BFAD?Reason=User%20forgot%20password

1.URI:
https://{host-name}/api/v1/dm/devices/unlock/{deviceuuid}

Unlock passcode for the device with the input device uuid is returned.

Http Method:

GET

Format:

xml, json

Request:

 

Device UUID

Required. Unique ID of the device. This ID is sent in the response of the Registration API.

Reason

Required. Free form text field (512 character limit) to display reason why the device is being unlocked.

 

 

2.URI:
https://{host-name}/api/v1/dm/devices/unlock/mac/{macaddress}

Unlock passcode for the device with the input device Wi-Fi MAC address is returned.

Http Method:

GET

Format:

xml, json

Request:

 

macAddress

Required.

Reason

Required. Free form text field (512 character limit) to display reason why the device is being unlocked.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<messages>

 

<message>1 passcode(s) sent.</message>

Status Message.

Passcode count is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

 

 

<passcodes>

 

<passcode>

 

<uuid>cf667a65-1e1a-4121-af63-398b11540d2f</uuid>

Unique device ID.

<name> jdoe:Android:6505551212</name>

Username:Platform: phonenumber string to help distinguish between a user’s multiple devices.

<value>6910</value>

For iOS devices:

 

Q – The device is MDM managed and has a passcode.

F – The device is MDM managed but has no passcode.

NA – The device is not MDM managed. Unlock is not possible.

 

For Android devices:

Q – The device has a passcode.

F – The device has no passcode.

NA – Unlock failed.

 

For Blackberry devices:

 

Passcode to unlock the device.  If value is empty, then the device was most likely locked with the user-set passcode.

</passcode>

 

</passcodes>

 

< /deviceManagementWebServiceResponse >

 

 

 

Wipe a Device

This API wipes a device, which returns its settings to the factory defaults. Once wiped, device status changes to “Wiped,” and the only valid action to apply is Retire. A wipe call is based on a unique device ID (uuid). 

You can use this API with ServiceNow.

Example:

https://<Ivanti EPMM>/api/v1/dm/devices/wipe/ee8198d9-5d79-4961-94c4-e21bf04b2467?Reason=Device%stolen

https://<Ivanti EPMM>/api/v1/dm/devices/wipe/38AA3C62BFAD?Reason= Device%stolen

1.URI:
https://{host-name}/api/v1/dm/devices/wipe/{deviceuuid}

Device with the input device uuid is wiped.

Http Method:

PUT

Format:

xml, json

Request:

 

Device UUID

Required. Unique ID of the device. This ID is sent in the response of the Registration API.

Reason

Free form text field (512 character limit) to display reason why the device is being wiped.

 

 

2.URI:
https://{host-name}/api/v1/dm/devices/wipe/mac/{macaddress}

Device with the input device Wi-Fi MAC address is wiped.

Http Method:

PUT

Format:

xml, json

Request:

 

macAddress

Required.

Reason

Free form text field (512 character limit) to display reason why the device is being wiped.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse>

 

<messages>

 

<message></message>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

 

 

<deviceUuid>caba40e7-f56b-44aa-ac70-79e32e91adf8</deviceUuid>

Unique device ID.

< /deviceManagementWebServiceResponse>

 

 

 

Wakeup Client

This API forces a device to connect to Ivanti EPMM, waking up the Ivanti EPMM Client.  A wakeup call is based on a unique device ID (uuid). 

You can use this API with ServiceNow.

Examples:  

https://<Ivanti EPMM>/api/v1/dm/devices/wakeup/ee8198d9-5d79-4961-94c4-e21bf04b2467

 

https://<Ivanti EPMM>/api/v1/dm/devices/wakeup/mac/38AA3C62BFAD

1.URI:
https://{host-name}/api/v1/dm/devices/wakeup/{deviceuuid}

Request to wake up is sent to device with the input device uuid.

Http Method:

GET

Format:

xml, json

 

 

2.URI:
https://{host-name}/api/v1/dm/devices/wakeup/mac/{macaddress}

Request to wake up is sent to device with the input Wi-Fi MAC address.

Http Method:

GET

Format:

xml, json

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

 

 

Response:

 

< deviceManagementWebServiceResponse>

 

<messages>

 

<message>Wake up request sent to device with uuid:cf667a65-1e1a-4121-af63-398b11540d2f</message>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

 

 

<deviceUuid>caba40e7-f56b-44aa-ac70-79e32e91adf8</deviceUuid>

Unique device ID.

< /deviceManagementWebServiceResponse>

 

 

 

Locate a Device

The Ivanti EPMM Client periodically records cell tower location information.  When this API is used, the last known location of the device is returned based on requested unique device ID (uuid).  If needed, this API will remotely turn on a device’s GPS.  To find the current location of the device:

1. Call this API with locatenow=true. This will send a request to the device to determine the current location. This process might take between a few seconds and 1 minute.
2. Call the locate API again after a few minutes without the locatenow parameter . This will return the current location found from step 1. If the current location could not be determined it will return the last known location.

You can use this API with ServiceNow.

Examples:

https://<Ivanti EPMM>/api/v1/dm/devices/locate/ee8198d9-5d79-4961-94c4-e21bf04b2467

 

https://<Ivanti EPMM>/api/v1/dm/devices/locate/mac/38AA3C62BFAD

 

https://<Ivanti EPMM>/api/v1/dm/devices/locate/ee8198d9-5d79-4961-94c4-e21bf04b2467?locatenow=true

1.URI:
https://{host-name}/api/v1/dm/devices/locate/{deviceuuid}

Location of the device with the input device uuid is returned.

Http Method:

GET

Format:

xml, json

Request:

 

Device UUID

Required. Unique ID of the device. This ID is sent in the response of the Registration API.

locatenow

Optional. True or false.  Defaults to false. See step 1 in the explanation above. This parameter does not apply to iOS.

 

 

2.URI:
https://{host-name}/api/v1/dm/devices/locate/mac/{macaddress}

Location of the device with the input Wi-Fi MAC address  is returned.

Http Method:

GET

Format:

xml, json

Request:

 

macAddress

Required.

locatenow

Optional. True or false.  Defaults to false. See step 1 in the explanation above. This parameter does not apply to iOS.

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<deviceUuid>cf667a65-1e1a-4121-af63-398b11540d2f</deviceUuid>

Unique Device ID.

<messages>

 

<message></message>

Status Message.

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

<locations>

 

<location>

 

<uuid>cf667a65-1e1a-4121-af63-398b11540d2f</uuid>

Unique Device ID.

<lookupResult>Cell</lookupResult>

Value returned describes how location was retrieved.  Valid values:

LookupFailure: unable to retrieve the location of the device.

GPS: location retrieved using the GPS of the device.

Cell: location retrieved using cell towers.

<latitude>37.386433</latitude>

Latitude of the location of the device.

<longitude>-122.053902</longitude>

Longitude of the location of the device.

<radius>1500</radius>

 

<capturedAt>1285802663000</capturedAt>

Time when the location of the device was captured in epoch format.

</location>

 

</locations>

 

<locateNow>false</locateNow>

 

< /deviceManagementWebServiceResponse>

 

 

 

Enable Roaming

This API enables or disables voice and data roaming on an iOS 5 device. However, note the following:

Voice roaming is available only on certain carriers. If you use this API to enable voice roaming on a device, the API returns success regardless of whether voice roaming is available on that device’s carrier.

If you disable voice roaming, you are also disabling data roaming, even if you specify true (enable) for the data roaming query parameter.

The API returns success regardless of whether the device supports the setting. To see whether a device has data or voice roaming enabled, see the Voice Roaming Enabled and DataRoamingEnabled fields in the response to a Get Device API.  See iOS Details Key-Value Descriptions.

Example:

https://<Ivanti EPMM>/api/v1/dm/devices/enableroaming/ee8198d9-5d79-4961-94c4-e21bf04b2467?voice=true&data=false

URI:
https://{host-name}/api/v1/dm/devices/enableroaming/{deviceuuid}

The specified deviceuuid indicates the device on which to change roaming settings.

Http Method:

PUT

Format:

xml, json

Request:

 

deviceuuid

Required. Unique ID of the iOS device. This ID can be retrieved in the response of other API calls, such as Get Devices by Status.

voice

Required. This parameter is a query parameter.

 

Set to true to enable voice roaming.

Set to false to disable voice roaming.

data

Required. This parameter is a query parameter.

 

Set to true to enable data roaming.

Set to false to disable data roaming.

 

If you set the voice parameter to false, data roaming is disabled even if you set the data parameter to true.

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

<deviceManagementWebServiceResponse>

 

<deviceUuid>

     190eb32e-32e1-4fe2-baa1-06a4488aaa4c

</deviceUuid>

 

<messages>

 

<message>

Device voice roaming settings updated successfully. The voice roaming setting is available only on certain carriers. Disabling voice roaming also disables data roaming.

</message>

Status message for voice roaming.

 

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

<message>

Device data roaming settings updated successfully.

</message>

Status message for data roaming.

 

Success is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

< /deviceManagementWebServiceResponse>

 

 

 

 

Get all Labels

Using labels is the method by which devices are grouped in the Ivanti EPMM database.  Labels can be used for applying policies or performing other management tasks on multiple devices. An administrator can create labels in addition to a default set supplied in Ivanti EPMM.  This API lists all labels, whether or not they are in use.

Example:

https://<Ivanti EPMM>/api/v1/dm/labels

URI:
https://{host-name}/api/v1/dm/labels

All labels in the database are returned.

Http Method:

GET

Format:

xml, json

 

 

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<messages>

 

<message>1 Label (s) returned</message>

Status message.

A label count is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

<labels>

 

 

 

<label id=”-3”>

Internal database ID.

Negative numbers correspond to the default labels.

Positive numbers correspond to labels that Ivanti EPMM administrator added.

 

 

    <name>iOS</name>

Label name.

    <description>Label for all iOS devices.</description>

Label description.

    <staticLabel>false</staticLabel>

Static labels are system created labels. 

False indicates a dynamic label.  Devices which satisfy the criteria specified in <searchCriteria> are automatically added to this label.

True indicates a static label, which has no <searchCriteria> Devices are manually assigned to static labels.

    <query>

        &quot;common.platform&quot;=&quot;iOS&quot; AND

       &quot;common.retired&quot;=false

    </query>

 

    <deviceCount>3</deviceCount>

The number of devices currently assigned to the label.

    <isESSearch>116</isESSearch>

 

<label>

 

</labels>

 

< /deviceManagementWebServiceResponse>

 

 

 

List of Operators

Ivanti EPMM retains a default list of operators for use during device registration.  Operators may be enabled or disabled by an administrator.  This API returns a complete list of all operators, regardless of whether they are used.

Example:

https://<Ivanti EPMM>/api/v1/dm/operators

URI:
https://{host-name}/api/v1/dm/operators

All operators defined in database are returned.

Http Method:

GET

Format:

xml, json

 

 

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<messages>

 

<message>1 Operator (s) returned</message>

Status message.

Operator count is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

<operators>

 

<operator>

 

<carrierShortName>AT&amp;T</carrierShortName>

Operator name.

<carrierType>Mobile</carrierType>

Mobile: Operator provides mobile services.

Fixed: Operator provides fixed telecom services.

<countryCode>1</countryCode>

Numeric country code.

<countryId>183</countryId>

Country identifier for the device. Ivanti EPMM assigns this identifier to the country.

<countryName>United States</countryName>

Country name.

 

 

<enabled>true</enabled>

True indicates the operator is enabled (configured for display) in the registration screen.

False indicates the operator is disabled.

<id>269</id>

Unique operator identifier in the database.

</operator>

 

</operators>

 

< /deviceManagementWebServiceResponse>

 

 

 

List of Countries

Ivanti EPMM retains a default list of countries in the database.  A country selection populates the country code field.  This API provides a complete list of all defined countries, regardless of whether they are used. This list of countries is used during device registration.

Example:

https://<Ivanti EPMM>/api/v1/dm/countries

URI:
https://{host-name}/api/v1/dm/countries

All countries defined in the database are returned.

Http Method:

GET

Format:

xml, json

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<messages>

 

<message>2 Countries returned</message>

Status Message.

Country count is shown if the method execution is successful.

A descriptive error message is shown if the method execution failed.

</messages>

 

<countries>

 

 

 

<country>

 

<countryName>United States</countryName>

Country name.

<countryCode>1</countryCode>

Numeric country code.

<isoAlpha2Code>US</isoAlpha2Code>

ISO Alpha 2 country code.

<enabledForRegistration>102</enabledForRegistration>

Whether the Ivanti EPMM administrator enabled the country for registration.

102 means disabled.

116 means enabled.

 

Note: 116 is the ASCII value for ‘t’, which stands for true, and 102 is the ASCII value for ‘f’, which stands for false.

</country>

 

 

 

<country>

 

<countryName>India</countryName>

 

<countryCode>91</countryCode>

 

<isoAplha2Code>IN</isoAplha2Code>

 

<enabledForRegistration>116</enabledForRegistration>

 

</country>

 

</countries>

 

< /deviceManagementWebServiceResponse>

 

 

 

Send Action to bulk devices

This request sends an action to multiple devices. The possible actions are:

Lock or unlock one or more devices.

Retire one or more devices.

Wipe one or more devices.

Wake up the Ivanti EPMM client on one or more devices, to force the clients to check in with Ivanti EPMM.

Ivanti EPMM validates that the request has a valid action and valid devices, and then sends the response. Ivanti EPMM performs the actions after sending the response. You can view the actions taken by looking at Logs & Events | All Logs in the Admin Portal.

If the requested action is invalid, Ivanti EPMM sends a response so indicating. If some devices are invalid, the response lists them, but Ivanti EPMM will still take the action on the valid devices.

Note: The UNLOCK bulk request is the exception. In this case, Ivanti EPMM performs the action before sending the response.

Example:

A LOCK request on two valid devices:

https://<Ivanti EPMM>/api/v1/dm/bulk/devices/LOCK?deviceUuids=1ac8bd81-4ab9-4e3e-b3a8-0c4f70521d23&deviceUuids=ab7e93f4-90e2-485b-82b9-7a030ef7d985

The resulting response:

<deviceManagementWebServiceResponse>

<messages/>

</deviceManagementWebServiceResponse>

URI:
https://{host-name}/api/v1/dm/bulk/devices/{actiontype}

 

Http Method:

POST

Format:

xml, json

 

Request:

 

actiontype

Required.

Specify one of these action types:
LOCK
UNLOCK
WAKEUP_DEVICE
RETIRE
WIPE

 

Note: These values are all capital letters.

deviceUuids

Required.

 

List each device uuid as a query parameter that has the name deviceUuids. By default, the maximum number of device uuids you can list is 20,000.

 

You can configure this value by setting the variable bulk.api.maxdeviceuuids in the file mifs.properties. This file is located in the directory /mi/tomcat-properties in the Linux system in which Ivanti EPMM is running.

 

Warning: The name of the parameter is deviceUuids, with an “s” at the end.

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<messages>

Status information, if any. Also specifies errors in the request, if any.

 

If Ivanti EPMM has no status or errors to report, this field is empty.

<message>Invalid action</message>

If you do not capitalize the action or misspell it, this field contains the value “Invalid action”.

  <invalidDevices>

If the request contains one or more invalid device uuids, this field lists them.

           <uuid> 1ac8bd81-4ab9-4e3e-b3a8-0c4f70521d23</uuid>

 

           <uuid> 623094f9-645b-4ecf-8840-78597cc1254b</uuid>

 

</invalidDevices>

 

<passcodes>

Only for the UNLOCK action.

   <passcode>

 

        <uuid>1ac8bd81-4ab9-4e3e-b3a8-0c4f70521d23</uuid>

The device uuid.

        <name>jdoe:Android:6505551212</name>

The concatenation of the device’s user’s name, device platform, and phone number.

        <value>Q</value>

For iOS devices:

 

Q – The device is MDM managed and has a passcode.

F – The device is MDM managed but has no passcode.

 

For Android devices:

Q – The device has a passcode.

F – The device has no passcode.

 

For Blackberry devices:

 

Passcode to unlock the device.  If value is empty, then the device was most likely locked with the user-set passcode.

  </passcode>

 

</passcodes>

 

<failedDevices>

Only for the UNLOCK action.

     <message>

 

 

Message contents indicates the device for which the unlock failed.

     </message>

 

</failedDevices>

 

< /deviceManagementWebServiceResponse>

 

Send message to devices

This request sends a message to one or more devices using email, SMS or push notification (e.g., APNS).

Ivanti EPMM validates that the request has valid devices, and then sends the response. Ivanti EPMM sends the messages to the devices after sending the response. You can view the results of sending the messages by looking at Logs & Events | All Logs in the Admin Portal.

If some devices are invalid, the response lists them, but Ivanti EPMM will still send the message to the valid devices.

Examples:

Send an SMS to two devices based on UDID.

https://app027.auto.Ivanti.com/api/v1/dm/bulk/sendmessage?mode=sms&message=Hello World&deviceUuid=e6d4f5f0-d883-41d2-8e87-c76fb4ef4cde&deviceUuid=54bc5eb5-592c-472e-98d2-e859bd037fef

The resulting response:

<deviceManagementWebServiceResponse>

<messages/>

<message> Message sent successfully for all devices.</message>

</deviceManagementWebServiceResponse>

Send an SMS to a device based on Wi-Fi MAC address:

https://app027.auto.Ivanti.com/api/v1/dm/bulk/mac/sendmessage?mode=sms&message=Hello World&deviceWiFiMacAddress=00237696635F

1.URI:
https://{host-name}/api/v1/dm/bulk/sendmessage

 

Http Method:

POST

Format:

xml, json

 

Request:

 

deviceUuid

Required.

 

List each device uuid as a query parameter that has the name deviceUuid. By default, the maximum number of device uuids you can list is 20,000.

 

You can configure this value by setting the variable bulk.api.maxdeviceuuids in the file mifs.properties. This file is located in the directory /mi/tomcat-properties in the Linux system in which Ivanti EPMM is running.

 

Warning: The name of this parameter is deviceUuid, with no “s” at the end.

message

Required.

subject

Valid only when the mode is email.

mode

Required. Possible values:
sms

email

pns (indicates push notification service)

 

 

2.URI:
https://{host-name}/api/v1/dm/bulk/mac/sendmessage

 

Http Method:

POST

Format:

xml, json

 

Request:

 

deviceWiFiMacAddress

Required.

 

List each Wi-Fi MAC address  as a query parameter that has the name macAddress.

 

message

Required.

subject

Valid only when the mode is email.

mode

Required. Possible values:
sms

email

pns

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

< deviceManagementWebServiceResponse >

 

<messages>

 

<message>Message sent successfully for all devices.</message>

Status information.

 

</messages>

 

<invalidDevices>

If the request contains one or more invalid device uuids, this field lists them.

           <uuid> 1ac8bd81-4ab9-4e3e-b3a8-0c4f70521d23</uuid>

 

           <uuid> 623094f9-645b-4ecf-8840-78597cc1254b</uuid>

 

</invalidDevices>

 

</messageSentFailed>

Indicates the message was not sent for at least one specified device, due to, for example, an invalid device uuid.

< /deviceManagementWebServiceResponse>

 

Get Profiles for a Device

This API returns the configurations and policies for a specified device uuid.

Example:

https://app027.auto.Ivanti.com/api/v1/dm/devices/profiles/e6d4f5f0-d883-41d2-8e87-c76fb4ef4cde

URI:
https://{host-name}/api/v1/dm/devices/profiles/{deviceUuid}

All profiles applied to the specified device are returned.

 

 

Http Method:

GET

 

 

Format:

xml, json

 

 

Request:

 

deviceUuid

Required.

Unique ID of the device. This ID can be retrieved in the response of other API calls, such as Device Registration or Get Device Details.

 

 

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response:

 

 

 

<deviceManagementWebServiceResponse>

 

<messages />

 

<profiles>

 

<profile id="-7">

 

<uuid>misystem-default-docs-policy</uuid>

 

<name>Default [email protected] Policy</name>

 

<policyType>DOCS</policyType>

 

<status>Applied</status>

 

<profileType>POLICY</profileType>

 

<lastUpdatedAt>1347343156739</lastUpdatedAt>

 

</profile>

 

<profile id="-3">

 

<uuid>misystem-default-security-policy</uuid>

 

<name>Default Security Policy</name>

 

<policyType>SECURITY</policyType>

 

<status>Applied</status>

 

<profileType>POLICY</profileType>

 

<lastUpdatedAt>1347343165503</lastUpdatedAt>

 

</profile>

 

<profile id="-2">

 

<uuid>misystem-default-privacy-policy</uuid>

 

<name>Default Privacy Policy</name>

 

<policyType>PRIVACY</policyType>

 

<status>Applied</status>

 

<profileType>POLICY</profileType>

 

<lastUpdatedAt>1347343156731</lastUpdatedAt>

 

</profile>

 

<profile id="-2">

 

<name> System - iOS MDM</name>

 

<policyType>MDM</policyType>

 

<status>Applied</status>

 

<profileType>APP</profileType>

 

<lastUpdatedAt>1347343165501</lastUpdatedAt>

 

</profile>
</profiles>

 

</deviceManagementWebServiceResponse>

 

Re-push Profiles for a Device

This API re-pushes the specified configuration or policy for the device uuid.

Example:

https://app027.auto.Ivanti.com/api/v1/dm/devices/repushprofile/e6d4f5f0-d883-41d2-8e87-c76fb4ef4cde

https://app386.auto.Ivanti.com/api/v1/dm/devices/repushprofile/1faaaf43-c99d-4c21-bab4-c9e810bd9606?id=3&type=APP

URI:
https://{host-name}/api/v1/dm/devices/repushprofile/{deviceUuid}

All profiles applied to the specified device are returned.

 

 

Http Method:

PUT

 

 

Format:

xml, json

 

 

Request:

 

deviceUuid

Required.

Unique ID of the device. This ID can be retrieved in the response of other API calls, such as Device Registration or Get Device Details.

id

Profile ID. Use the Get Profiles API to get the profile ID.

type

APP for configuration

POLICY for policy

 

 

Response Status Code:

 

‘404 – No Data Found’

There is no data.

‘200 – OK’

Data is present and the response is returned.

Response: