Product Documentation

Macros

XenMobile provides macros as a way to populate user or device property data within the text field of the following items:

  • Policies
  • Notifications
  • Enrollment templates
  • Device configuration XML file
  • Automated actions
  • Credential provider Certificate Signing Requests

XenMobile replaces a macro with the corresponding user or system values. For example, you can prepopulate the mailbox value for a user in a single Exchange profile across thousands of users.

Macro syntax

A macro can take the following form:

  • ${type.PROPERTYNAME}
  • ${type.PROPERTYNAME ['DEFAULT VALUE'] [ | FUNCTION [(ARGUMENT1, ARGUMENT2)]}

Enclose all syntax following the dollar sign ($) in curly brackets ({ }).

  • Qualified property names reference either a user property, a device property, or a custom property.
  • Qualified property names consist of a prefix, followed by the actual property name.
  • User properties take the form ${user.[PROPERTYNAME] (prefix="user.")}.
  • Device properties take the form ${device.[PROPERTYNAME] (prefix="device.")}.
  • Property names are case-sensitive.
  • A function can be a limited list or a link to a third-party reference that defines functions. This macro for a notification message includes the function firstnotnull:

Device ${firstnotnull(device.TEL_NUMBER,device.serialNumber)} has been blocked…

  • For custom macros (properties that you define), the prefix is ${custom}. You can omit the prefix.

Here’s an example of a commonly used macro, ${user.username}, that populates the user name value in the text field of a policy. This macro is useful for configuring Exchange ActiveSync profiles and other profiles used by multiple users. The following example shows how to use macros in an Exchange policy. The macro for User is ${user.username}. The macro for Email address is ${user.mail}.

Image of macro in Device Policy configuration screen

The following example shows how to use macros for a certificate signing request. The macro for Subject name is CN=$user.username. The macro for the Value of a Subject alternative name is $user.userprincipalname.

Image of macro in Credential Providers configuration screen

The following example shows how to use macros in a notification template. The example template defines the message sent to a user when HDX applications are blocked because of a non-compliant device. The macro for the Message is:

Device ${firstnotnull(device.TEL_NUMBER,device.serialNumber)} no longer complies with the device policy and HDX applications will be blocked.

Image of macro in Notification Templates configuration screen

For more examples of macros used in notifications, go to Settings > Notification Templates, select a pre-defined template, and click Edit.

The following example shows a macro in the Device Name device policy. You can type a macro, a combination of macros, or a combination of macros and text to name each device uniquely. For example, use ${device.serialnumber} to set the device names to the serial number of each device. Use ${device.serialnumber} ${ user.username } to include the user name in the device name. The Device Name device policy works on supervised iOS and macOS devices.

Image of macro in Device Policy configuration screen

Macros for default notification templates

You can use the following macros in the default notification templates:

  • ${account.SUPPORT_EMAIL}
  • ${applicationName}
  • ${enrollment.andriod.agent.download.url}
  • ${enrollment.ios.agent.download.url}
  • ${enrollment.pin}
  • ${enrollment.url}
  • ${enrollment.urls}
  • ${enrollment.ios.url}
  • ${enrollment.macos.url}
  • ${enrollment.android.url}
  • ${enrollment.ios.platform}
  • ${enrollment.macos.platform}
  • ${enrollment.android.platform}
  • ${firstnotnull(device.TEL_NUMBER,device.serialNumber)}
  • ${firstnotnull(device.TEL_NUMBER,user.mobile)}
  • ${outofcompliance.reason(smg_block)}
  • ${outofcompliance.reason(whitelist_blacklist_apps_name)}
  • ${vpp.account}
  • ${vpp.appname}
  • ${vpp.url}
  • ${zdmserver.hostPath}/enroll

This example shows how to create a notification that includes enrollment URLs for multiple device platforms. The macro for the Message is:

${enrollment.urls}

Image of Notification Template settings screen

These examples show how to create messages for notifications that prompt the users to click the enrollment URL for their device platforms:

Example 1:

To enroll, click the link below that applies to your device platform:

${enrollment.ios.platform} - ${enrollment.ios.url}

${enrollment.macos.platform} - ${enrollment.macos.url}

${enrollment.android.platform} - ${enrollment.android.url}

Example 2:

To enroll an iOS device, click the link ${enrollment.ios.url}.

To enroll a macOS device, click the link ${enrollment.macos.url}.

To enroll an Android device, click the link ${enrollment.android.url}.

Macros for specific policies

For the Device Name device policy (for iOS and macOS), you can use these macros for the Device name:

  • ${device.serialnumber}
  • ${user.username}@example.com
  • ${device.serialnumber}
  • ${device.serialnumber}
  • ${user.username}
  • ${enrollment.pin}
  • ${user.dnsroot}

For the Cellular device policy (for iOS), you can use macros for the values of non-string fields, such as Proxy server port. For example, you can now use a macro such as ${device.xyz} or ${setting.xyz}, which expands into an integer.

For a device configuration XML file that you import into XenMobile by using the Import iOS & macOS Profile device policy, you can use macros for the values of non-string fields.

For the Samsung MDM License Key device policy, you can use this macro for the ELM license key:

  • ${elm.license.key}

For the Webclip device policy, you can use this macro for the URL:

  • ${webeas-url}

Macros to obtain built-in device properties

   
Display name Macros
Device Id $device.id
Device IMEI $device.imei
OS Family $device.OSFamily
Serial Number $device.serialNumber

Macros for all device properties

     
Display name Web element Macros
Account Suspended? GOOGLE_AW_DIRECTORY_SUSPENDED ${device.GOOGLE_AW_DIRECTORY_SUSPENDED}
Activation lock bypass code ACTIVATION_LOCK_BYPASS_CODE ${device.ACTIVATION_LOCK_BYPASS_CODE}
Activation lock enabled ACTIVATION_LOCK_ENABLED ${device.ACTIVATION_LOCK_ENABLED}
Active iTunes account ACTIVE_ITUNES ${device.ACTIVE_ITUNES}
ActiveSync device known by MSP AS_DEVICE_KNOWN_BY_ZMSP ${device.AS_DEVICE_KNOWN_BY_ZMSP}
ActiveSync ID EXCHANGE_ACTIVESYNC_ID ${device.EXCHANGE_ACTIVESYNC_ID}
Administrator disabled ADMIN_DISABLED ${device.ADMIN_DISABLED}
AIK Present? WINDOWS_HAS_AIK_PRESENT ${device.WINDOWS_HAS_AIK_PRESENT}
Amazon MDM API available AMAZON_MDM ${device.AMAZON_MDM}
Android for Work Device ID GOOGLE_AW_DEVICE_ID ${device.GOOGLE_AW_DEVICE_ID}
Android for Work Enabled Device? GOOGLE_AW_ENABLED_DEVICE ${device.GOOGLE_AW_ENABLED_DEVICE}
Android for Work Install Type GOOGLE_AW_INSTALL_TYPE ${device.GOOGLE_AW_INSTALL_TYPE}
Antispyware Signature tatus ANTI_SPYWARE_SIGNATURE_STATUS ${device.ANTI_SPYWARE_SIGNATURE_STATUS}
Antispyware Status ANTI_SPYWARE_STATUS ${device.ANTI_SPYWARE_STATUS}
Antivirus Signature Status ANTI_VIRUS_SIGNATURE_STATUS ${device.ANTI_VIRUS_SIGNATURE_STATUS}
Antivirus Status ANTI_VIRUS_STATUS ${device.ANTI_VIRUS_STATUS}
ASM DEP activation lock bypass code DEP_ACTIVATION_LOCK_BYPASS_CODE ${device.DEP_ACTIVATION_LOCK_BYPASS_CODE}
ASM DEP escrow key DEP_ESCROW_KEY ${device.DEP_ESCROW_KEY}
Asset tag ASSET_TAG ${device.ASSET_TAG}
Automatically check software updates AutoCheckEnabled ${device.AutoCheckEnabled}
Automatically download software updates in the background BackgroundDownloadEnabled ${device.BackgroundDownloadEnabled}
Automatically install app updates AutomaticAppInstallationEnabled ${device.AutomaticAppInstallationEnabled}
Automatically install OS updates AutomaticOSInstallationEnabled ${device.AutomaticOSInstallationEnabled}
Automatically install security updates AutomaticSecurityUpdatesEnabled ${device.AutomaticSecurityUpdatesEnabled}
Autoupdate Status AUTOUPDATE_STATUS ${device.AUTOUPDATE_STATUS}
Available RAM MEMORY_AVAILABLE ${device.MEMORY_AVAILABLE}
Available software updates AVAILABLE_OS_UPDATE_HUMAN_READABLE ${device.AVAILABLE_OS_UPDATE_HUMAN_READABLE}
Available storage space FREEDISK ${device.FREEDISK}
Backup battery BACKUP_BATTERY_PERCENT ${device.BACKUP_BATTERY_PERCENT}
Baseband firmware version MODEM_FIRMWARE_VERSION ${device.MODEM_FIRMWARE_VERSION}
Battery Charging BATTERY_CHARGING_STATUS ${device.BATTERY_CHARGING_STATUS}
Battery charging BATTERY_CHARGING ${device.BATTERY_CHARGING}
Battery Remaining BATTERY_ESTIMATED_CHARGE_REMAINING ${device.BATTERY_ESTIMATED_CHARGE_REMAINING}
Battery Runtime BATTERY_RUNTIME ${device.BATTERY_RUNTIME}
Battery Status BATTERY_STATUS ${device.BATTERY_STATUS}
Bes device known by MSP BES_DEVICE_KNOWN_BY_ZMSP ${device.BES_DEVICE_KNOWN_BY_ZMSP}
BES PIN BES_PIN ${device.BES_PIN}
BES server agent ID AGENT_ID ${device.AGENT_ID}
BES server name BES_SERVER ${device.BES_SERVER}
BES server version BES_VERSION ${device.BES_VERSION}
BIOS Info BIOS_INFO ${device.BIOS_INFO}
BitLocker Status WINDOWS_HAS_BIT_LOCKER_STATUS ${device.WINDOWS_HAS_BIT_LOCKER_STATUS}
Bluetooth MAC address BLUETOOTH_MAC ${device.BLUETOOTH_MAC}
Boot Debugging Enabled? WINDOWS_HAS_BOOT_DEBUGGING_ENABLED ${device.WINDOWS_HAS_BOOT_DEBUGGING_ENABLED}
Boot Manager Rev List Version WINDOWS_HAS_BOOT_MGR_REV_LIST_VERSION ${device.WINDOWS_HAS_BOOT_MGR_REV_LIST_VERSION}
Carrier Code CARRIER_CODE ${device.CARRIER_CODE}
Carrier settings version CARRIER_SETTINGS_VERSION ${device.CARRIER_SETTINGS_VERSION}
Catalog URL CatalogURL ${device.CatalogURL}
Cellular altitude GPS_ALTITUDE_FROM_CELLULAR ${device.GPS_ALTITUDE_FROM_CELLULAR}
Cellular course GPS_COURSE_FROM_CELLULAR ${device.GPS_COURSE_FROM_CELLULAR}
Cellular horizontal accuracy GPS_HORIZONTAL_ACCURACY_FROM_CELLULAR ${device.GPS_HORIZONTAL_ACCURACY_FROM_CELLULAR}
Cellular latitude GPS_LATITUDE_FROM_CELLULAR ${device.GPS_LATITUDE_FROM_CELLULAR}
Cellular longitude GPS_LONGITUDE_FROM_CELLULAR ${device.GPS_LONGITUDE_FROM_CELLULAR}
Cellular speed GPS_SPEED_FROM_CELLULAR ${device.GPS_SPEED_FROM_CELLULAR}
Cellular technology CELLULAR_TECHNOLOGY ${device.CELLULAR_TECHNOLOGY}
Cellular timestamp GPS_TIMESTAMP_FROM_CELLULAR ${device.GPS_TIMESTAMP_FROM_CELLULAR}
Cellular vertical accuracy GPS_VERTICAL_ACCURACY_FROM_CELLULAR ${device.GPS_VERTICAL_ACCURACY_FROM_CELLULAR}
Change Password at Next Login? GOOGLE_AW_DIRECTORY_CHANGE_PASSWORD_NEXT_LOGIN ${device.GOOGLE_AW_DIRECTORY_CHANGE_PASSWORD_NEXT_LOGIN}
Client device ID CLIENT_DEVICE_ID ${device.CLIENT_DEVICE_ID}
Cloud backup enabled CLOUD_BACKUP_ENABLED ${device.CLOUD_BACKUP_ENABLED}
Code Integrity Enabled? WINDOWS_HAS_CODE_INTEGRITY_ENABLED ${device.WINDOWS_HAS_CODE_INTEGRITY_ENABLED}
Code Integrity Rev List Version WINDOWS_HAS_CODE_INTGTY_REV_LIST_VERSION ${device.WINDOWS_HAS_CODE_INTGTY_REV_LIST_VERSION}
Color COLOR ${device.COLOR}
CPU clock speed CPU_CLOCK_SPEED ${device.CPU_CLOCK_SPEED}
CPU type CPU_TYPE ${device.CPU_TYPE}
Creation Time GOOGLE_AW_DIRECTORY_CREATION_TIME ${device.GOOGLE_AW_DIRECTORY_CREATION_TIME}
Critical software updates AVAILABLE_OS_UPDATE_IS_CRITICAL ${device.AVAILABLE_OS_UPDATE_IS_CRITICAL}
Current carrier network CARRIER ${device.CARRIER}
Current mobile country code CURRENT_MCC ${device.CURRENT_MCC}
Current mobile network code CURRENT_MNC ${device.CURRENT_MNC}
Data roaming allowed DATA_ROAMING_ENABLED ${device.DATA_ROAMING_ENABLED}
Date of the last iCloud backup LAST_CLOUD_BACKUP_DATE ${device.LAST_CLOUD_BACKUP_DATE}
Default catalog IsDefaultCatalog ${device.IsDefaultCatalog}
DEP account name BULK_ENROLLMENT_DEP_ACCOUNT_NAME ${device.BULK_ENROLLMENT_DEP_ACCOUNT_NAME}
DEP Policy WINDOWS_HAS_DEP_POLICY ${device.WINDOWS_HAS_DEP_POLICY}
DEP profile assigned PROFILE_ASSIGN_TIME ${device.PROFILE_ASSIGN_TIME}
DEP profile pushed PROFILE_PUSH_TIME ${device.PROFILE_PUSH_TIME}
DEP profile removed PROFILE_REMOVE_TIME ${device.PROFILE_REMOVE_TIME}
DEP registration by DEVICE_ASSIGNED_BY ${device.DEVICE_ASSIGNED_BY}
DEP registration date DEVICE_ASSIGNED_DATE ${device.DEVICE_ASSIGNED_DATE}
Description DESCRIPTION ${device.DESCRIPTION}
Device model SYSTEM_OEM ${device.SYSTEM_OEM}
Device name DEVICE_NAME ${device.DEVICE_NAME}
Device Type DEVICE_TYPE ${device.DEVICE_TYPE}
Do Not Disturb activated DO_NOT_DISTURB ${device.DO_NOT_DISTURB}
ELAM Driver Loaded? WINDOWS_HAS_ELAM_DRIVER_LOADED ${device.WINDOWS_HAS_ELAM_DRIVER_LOADED}
Encryption Compliance ENCRYPTION_COMPLIANCE ${device.ENCRYPTION_COMPLIANCE}
ENROLLMENT_KEY_GENERATION_DATE ENROLLMENT_KEY_GENERATION_DATE ${device.ENROLLMENT_KEY_GENERATION_DATE}
Enterprise ID ENTERPRISEID ${device.ENTERPRISEID}
External storage 1: available space EXTERNAL_STORAGE1_FREE_SPACE ${device.EXTERNAL_STORAGE1_FREE_SPACE}
External storage 1: name EXTERNAL_STORAGE1_NAME ${device.EXTERNAL_STORAGE1_NAME}
External storage 1: total space EXTERNAL_STORAGE1_TOTAL_SPACE ${device.EXTERNAL_STORAGE1_TOTAL_SPACE}
External storage 2: available space EXTERNAL_STORAGE2_FREE_SPACE ${device.EXTERNAL_STORAGE2_FREE_SPACE}
External storage 2: name EXTERNAL_STORAGE2_NAME ${device.EXTERNAL_STORAGE2_NAME}
External storage 2: total space EXTERNAL_STORAGE2_TOTAL_SPACE ${device.EXTERNAL_STORAGE2_TOTAL_SPACE}
External storage encrypted EXTERNAL_ENCRYPTION ${device.EXTERNAL_ENCRYPTION}
FileVault Enabled IS_FILEVAULT_ENABLED ${device.IS_FILEVAULT_ENABLED}
Firewall Status DEVICE_FIREWALL_STATUS ${device.DEVICE_FIREWALL_STATUS}
Firewall Status FIREWALL_STATUS ${device.FIREWALL_STATUS}
Firmware version FIRMWARE_VERSION ${device.FIRMWARE_VERSION}
First synchronization ZMSP_FIRST_SYNC ${device.ZMSP_FIRST_SYNC}
Google Directory Alias GOOGLE_AW_DIRECTORY_GOOGLE_ALIAS ${device.GOOGLE_AW_DIRECTORY_GOOGLE_ALIAS}
Google Directory Family Name GOOGLE_AW_DIRECTORY_FAMILY_NAME ${device.GOOGLE_AW_DIRECTORY_FAMILY_NAME}
Google Directory Name GOOGLE_AW_DIRECTORY_NAME ${device.GOOGLE_AW_DIRECTORY_NAME}
Google Directory Primary Email GOOGLE_AW_DIRECTORY_PRIMARY ${device.GOOGLE_AW_DIRECTORY_PRIMARY}
Google Directory User ID GOOGLE_AW_DIRECTORY_USER_ID ${device.GOOGLE_AW_DIRECTORY_USER_ID}
GPS altitude GPS_ALTITUDE_FROM_GPS ${device.GPS_ALTITUDE_FROM_GPS}
GPS course GPS_COURSE_FROM_GPS ${device.GPS_COURSE_FROM_GPS}
GPS horizontal accuracy GPS_HORIZONTAL_ACCURACY_FROM_GPS ${device.GPS_HORIZONTAL_ACCURACY_FROM_GPS}
GPS latitude GPS_LATITUDE_FROM_GPS ${device.GPS_LATITUDE_FROM_GPS}
GPS longitude GPS_LONGITUDE_FROM_GPS ${device.GPS_LONGITUDE_FROM_GPS}
GPS speed GPS_SPEED_FROM_GPS ${device.GPS_SPEED_FROM_GPS}
GPS timestamp GPS_TIMESTAMP_FROM_GPS ${device.GPS_TIMESTAMP_FROM_GPS}
GPS vertical accuracy GPS_VERTICAL_ACCURACY_FROM_GPS ${device.GPS_VERTICAL_ACCURACY_FROM_GPS}
Hardware Device ID HW_DEVICE_ID ${device.HW_DEVICE_ID}
Hardware encryption capabilities HARDWARE_ENCRYPTION_CAPS ${device.HARDWARE_ENCRYPTION_CAPS}
HAS_CONTAINER HAS_CONTAINER ${device.HAS_CONTAINER}
Hash of the iTunes store account currently logged on ITUNES_STORE_ACCOUNT_HASH ${device.ITUNES_STORE_ACCOUNT_HASH}
Home carrier network SIM_CARRIER_NETWORK ${device.SIM_CARRIER_NETWORK}
Home mobile country code SIM_MCC ${device.SIM_MCC}
Home mobile network code SIM_MNC ${device.SIM_MNC}
HTC API version HTC_MDM_VERSION ${device.HTC_MDM_VERSION}
HTC MDM API available HTC_MDM ${device.HTC_MDM}
ICCID ICCID ${device.ICCID}
Identity AS_DEVICE_IDENTITY ${device.AS_DEVICE_IDENTITY}
IMEI/MEID number IMEI ${device.IMEI}
IMSI SIM_ID ${device.SIM_ID}
Internal storage encrypted LOCAL_ENCRYPTION ${device.LOCAL_ENCRYPTION}
IP location IP_LOCATION ${device.IP_LOCATION}
IPV4 Address IP_ADDRESSV4 ${device.IP_ADDRESSV4}
IPV6 Address IP_ADDRESSV6 ${device.IP_ADDRESSV6}
Issued At WINDOWS_HAS_ISSUED_AT ${device.WINDOWS_HAS_ISSUED_AT}
Jailbroken/Rooted ROOT_ACCESS ${device.ROOT_ACCESS}
Kernel Debugging Enabled? WINDOWS_HAS_OS_KERNEL_DEBUGGING_ENABLED ${device.WINDOWS_HAS_OS_KERNEL_DEBUGGING_ENABLED}
Kiosk mode IS_KIOSK ${device.IS_KIOSK}
Last known IP address LAST_IP_ADDR ${device.LAST_IP_ADDR}
Last policy update time LAST_POLICY_UPDATE_TIME ${device.LAST_POLICY_UPDATE_TIME}
Last scan date PreviousScanDate ${device.PreviousScanDate}
Last scan result PreviousScanResult ${device.PreviousScanResult}
Last scheduled software updates AVAILABLE_OS_UPDATE_INSTALL_LAST_ATTEMPT_TIME ${device.AVAILABLE_OS_UPDATE_INSTALL_LAST_ATTEMPT_TIME}
Last scheduled software updates failure message AVAILABLE_OS_UPDATE_INSTALL_FAIL_MSG ${device.AVAILABLE_OS_UPDATE_INSTALL_FAIL_MSG}
Last scheduled software updates status AVAILABLE_OS_UPDATE_INSTALL_STATUS ${device.AVAILABLE_OS_UPDATE_INSTALL_STATUS}
Last synchronization ZMSP_LAST_SYNC ${device.ZMSP_LAST_SYNC}
Locator service enabled DEVICE_LOCATOR ${device.DEVICE_LOCATOR}
MAC Address MAC_ADDRESS ${device.MAC_ADDRESS}
MAC Address Network Connection MAC_NETWORK_CONNECTION ${device.MAC_NETWORK_CONNECTION}
MAC Address Type MAC_ADDRESS_TYPE ${device.MAC_ADDRESS_TYPE}
Mailbox Setup GOOGLE_AW_DIRECTORY_MAILBOX_SETUP ${device.GOOGLE_AW_DIRECTORY_MAILBOX_SETUP}
Main battery MAIN_BATTERY_PERCENT ${device.MAIN_BATTERY_PERCENT}
MDM lost mode enabled IS_MDM_LOST_MODE_ENABLED ${device.IS_MDM_LOST_MODE_ENABLED}
MDX_SHARED_ENCRYPTION_KEY MDX_SHARED_ENCRYPTION_KEY ${device.MDX_SHARED_ENCRYPTION_KEY}
MEID MEID ${device.MEID}
Mobile phone number TEL_NUMBER ${device.TEL_NUMBER}
Model ID MODEL_ID ${device.MODEL_ID}
Model Number MODEL_NUMBER ${device.MODEL_NUMBER}
Network Adapter Type NETWORK_ADAPTER_TYPE ${device.NETWORK_ADAPTER_TYPE}
NitroDesk TouchDown installed TOUCHDOWN_FIND ${device.TOUCHDOWN_FIND}
NitroDesk TouchDown licensed via MDM TOUCHDOWN_LICENSED_VIA_MDM ${device.TOUCHDOWN_LICENSED_VIA_MDM}
Operating system build SYSTEM_OS_BUILD ${device.SYSTEM_OS_BUILD}
Operating System Edition OS_EDITION ${device.OS_EDITION}
Operating system language (locale) SYSTEM_LANGUAGE ${device.SYSTEM_LANGUAGE}
Operating system version SYSTEM_OS_VERSION ${device.SYSTEM_OS_VERSION}
Organization address ORGANIZATION_ADDRESS ${device.ORGANIZATION_ADDRESS}
Organization e-mail ORGANIZATION_EMAIL ${device.ORGANIZATION_EMAIL}
Organization magic ORGANIZATION_MAGIC ${device.ORGANIZATION_MAGIC}
Organization name ORGANIZATION_NAME ${device.ORGANIZATION_NAME}
Organization phone number ORGANIZATION_PHONE ${device.ORGANIZATION_PHONE}
Out of Compliance OUT_OF_COMPLIANCE ${device.OUT_OF_COMPLIANCE}
Owned by CORPORATE_OWNED ${device.CORPORATE_OWNED}
Passcode compliant PASSCODE_IS_COMPLIANT ${device.PASSCODE_IS_COMPLIANT}
Passcode compliant with configuration PASSCODE_IS_COMPLIANT_WITH_CFG ${device.PASSCODE_IS_COMPLIANT_WITH_CFG}
Passcode present PASSCODE_PRESENT ${device.PASSCODE_PRESENT}
PCR0 WINDOWS_HAS_PCR0 ${device.WINDOWS_HAS_PCR0}
Perimeter breach GPS_PERIMETER_BREACH ${device.GPS_PERIMETER_BREACH}
Periodic check PerformPeriodicCheck ${device.PerformPeriodicCheck}
Personal Hotspot activated PERSONAL_HOTSPOT_ENABLED ${device.PERSONAL_HOTSPOT_ENABLED}
PIN code for geofence PIN_CODE_FOR_GEO_FENCE ${device.PIN_CODE_FOR_GEO_FENCE}
Platform SYSTEM_PLATFORM ${device.SYSTEM_PLATFORM}
Platform API level API_LEVEL ${device.API_LEVEL}
Policy name POLICY_NAME ${device.POLICY_NAME}
Primary Phone Number IDENTITY1_PHONENUMBER ${device.IDENTITY1_PHONENUMBER}
Primary SIM Carrier Operator IDENTITY1_CARRIER_NETWORK_OPERATOR ${device.IDENTITY1_CARRIER_NETWORK_OPERATOR}
Primary SIM ICCID IDENTITY1_ICCID ${device.IDENTITY1_ICCID}
Primary SIM IMEI IDENTITY1_IMEI ${device.IDENTITY1_IMEI}
Primary SIM IMSI IDENTITY1_IMSI ${device.IDENTITY1_IMSI}
Primary SIM Roaming IDENTITY1_ROAMING ${device.IDENTITY1_ROAMING}
Primary SIM Roaming Compliance IDENTITY1_ROAMING_COMPLIANCE ${device.IDENTITY1_ROAMING_COMPLIANCE}
Product name PRODUCT_NAME ${device.PRODUCT_NAME}
Publisher Device ID PUBLISHER_DEVICE_ID ${device.PUBLISHER_DEVICE_ID}
Reset Count WINDOWS_HAS_RESET_COUNT ${device.WINDOWS_HAS_RESET_COUNT}
Restart Count WINDOWS_HAS_RESTART_COUNT ${device.WINDOWS_HAS_RESTART_COUNT}
Safe Mode Enabled? WINDOWS_HAS_SAFE_MODE ${device.WINDOWS_HAS_SAFE_MODE}
Samsung KNOX API available SAMSUNG_KNOX ${device.SAMSUNG_KNOX}
Samsung KNOX API version SAMSUNG_KNOX_VERSION ${device.SAMSUNG_KNOX_VERSION}
Samsung KNOX attestation SAMSUNG_KNOX_ATTESTED ${device.SAMSUNG_KNOX_ATTESTED}
Samsung KNOX attestation updated date SAMSUNG_KNOX_ATT_UPDATED_TIME ${device.SAMSUNG_KNOX_ATT_UPDATED_TIME}
Samsung SAFE API available SAMSUNG_MDM ${device.SAMSUNG_MDM}
Samsung SAFE API version SAMSUNG_MDM_VERSION ${device.SAMSUNG_MDM_VERSION}
SBCP Hash WINDOWS_HAS_SBCP_HASH ${device.WINDOWS_HAS_SBCP_HASH}
Screen: height SCREEN_HEIGHT ${device.SCREEN_HEIGHT}
Screen: number of colors SCREEN_NB_COLORS ${device.SCREEN_NB_COLORS}
Screen: size SCREEN_SIZE ${device.SCREEN_SIZE}
Screen: width SCREEN_WIDTH ${device.SCREEN_WIDTH}
Screen: X-axis resolution SCREEN_XDPI ${device.SCREEN_XDPI}
Screen: Y-axis resolution SCREEN_YDPI ${device.SCREEN_YDPI}
Secondary Phone Number IDENTITY2_PHONENUMBER ${device.IDENTITY2_PHONENUMBER}
Secondary SIM Carrier Operator IDENTITY2_CARRIER_NETWORK_OPERATOR ${device.IDENTITY2_CARRIER_NETWORK_OPERATOR}
Secondary SIM ICCID IDENTITY2_ICCID ${device.IDENTITY2_ICCID}
Secondary SIM IMEI IDENTITY2_IMEI ${device.IDENTITY2_IMEI}
Secondary SIM IMSI IDENTITY2_IMSI ${device.IDENTITY2_IMSI}
Secondary SIM Roaming IDENTITY2_ROAMING ${device.IDENTITY2_ROAMING}
Secondary SIM Roaming Compliance IDENTITY2_ROAMING_COMPLIANCE ${device.IDENTITY2_ROAMING_COMPLIANCE}
Secure Boot Enabled? WINDOWS_HAS_SECURE_BOOT_ENABLED ${device.WINDOWS_HAS_SECURE_BOOT_ENABLED}
Secure Boot Status SECURE_BOOT_STATE ${device.SECURE_BOOT_STATE}
SecureContainer Enabled DLP_ACTIVE ${device.DLP_ACTIVE}
Security patch level SYSTEM_SECURITY_PATCH_LEVEL ${device.SYSTEM_SECURITY_PATCH_LEVEL}
Serial number SERIAL_NUMBER ${device.SERIAL_NUMBER}
SMS capable IS_SMS_CAPABLE ${device.IS_SMS_CAPABLE}
Sony Enterprise API available SONY_MDM ${device.SONY_MDM}
Sony Enterprise API version SONY_MDM_VERSION ${device.SONY_MDM_VERSION}
Supervised SUPERVISED ${device.SUPERVISED}
Suspension Reason GOOGLE_AW_DIRECTORY_SUSPENTION_REASON ${device.GOOGLE_AW_DIRECTORY_SUSPENTION_REASON}
Tampered Status TAMPERED_STATUS ${device.TAMPERED_STATUS}
Terms & Conditions TERMS_AND_CONDITIONS ${device.TERMS_AND_CONDITIONS}
Terms And Agreement Accepted? GOOGLE_AW_DIRECTORY_AGREED_TO_TERMS ${device.GOOGLE_AW_DIRECTORY_AGREED_TO_TERMS}
Test Signing Enabled? WINDOWS_HAS_TEST_SIGNING_ENABLED ${device.WINDOWS_HAS_TEST_SIGNING_ENABLED}
Total RAM MEMORY ${device.MEMORY}
Total storage space TOTAL_DISK_SPACE ${device.TOTAL_DISK_SPACE}
TPM version TPM_VERSION ${device.TPM_VERSION}
UDID UDID ${device.UDID}
User Account Control Status UAC_STATUS ${device.UAC_STATUS}
User agent USER_AGENT ${device.USER_AGENT}
User defined #1 USER_DEFINED_1 ${device.USER_DEFINED_1}
User defined #2 USER_DEFINED_2 ${device.USER_DEFINED_2}
User defined #3 USER_DEFINED_3 ${device.USER_DEFINED_3}
User language (locale) USER_LANGUAGE ${device.USER_LANGUAGE}
Vendor VENDOR ${device.VENDOR}
Voice capable IS_VOICE_CAPABLE ${device.IS_VOICE_CAPABLE}
Voice roaming allowed VOICE_ROAMING_ENABLED ${device.VOICE_ROAMING_ENABLED}
VSM Enabled? WINDOWS_HAS_VSM_ENABLED ${device.WINDOWS_HAS_VSM_ENABLED}
WiFi MAC address WIFI_MAC ${device.WIFI_MAC}
WINDOWS_ENROLLMENT_KEY WINDOWS_ENROLLMENT_KEY ${device.WINDOWS_ENROLLMENT_KEY}
WinPE Enabled? WINDOWS_HAS_WINPE ${device.WINDOWS_HAS_WINPE}
WNS Notification Status PROPERTY_WNS_PUSH_STATUS ${device.PROPERTY_WNS_PUSH_STATUS}
WNS Notification URL PROPERTY_WNS_PUSH_URL ${device.PROPERTY_WNS_PUSH_URL}
WNS Notification URL expiry date PROPERTY_WNS_PUSH_URL_EXPIRY ${device.PROPERTY_WNS_PUSH_URL_EXPIRY}
XenMobile agent ID ENROLLMENT_AGENT_ID ${device.ENROLLMENT_AGENT_ID}
XenMobile agent revision EW_REVISION ${device.EW_REVISION}
XenMobile agent version EW_VERSION ${device.EW_VERSION}
Zebra API available ZEBRA_MDM ${device.ZEBRA_MDM}
Zebra MXMF version ZEBRA_MDM_VERSION ${device.ZEBRA_MDM_VERSION}
Zebra Patch version ZEBRA_PATCH_VERSION ${device.ZEBRA_PATCH_VERSION}

Macros to obtain built-in user properties

   
Display name Macros
domainname (domain name; default domain) ${user.domainname}
loginname (user name plus domain name) ${user.loginname}
username (login name minus the domain, if any) ${user.username}

Macros for all user properties

     
Display name Web element Macros
Active Directory failed logon tries badpwdcount ${user.badpwdcount}
ActiveSync user email asuseremail ${user.asuseremail}
ASM data source asmpersonsource ${user.asmpersonsource}
ASM DEP account name asmdepaccount ${user.asmdepaccount}
ASM managed Apple ID asmpersonmanagedappleid ${user.asmpersonmanagedappleid}
ASM passcode type asmpersonpasscodetype ${user.asmpersonpasscodetype}
ASM person ID asmpersonid ${user.asmpersonid}
ASM person status asmpersonstatus ${user.asmpersonstatus}
ASM person title asmpersontitle ${user.asmpersontitle}
ASM person unique ID asmpersonuniqueid ${user.asmpersonuniqueid}
ASM source system ID asmpersonsourcesystemid ${user.asmpersonsourcesystemid}
ASM student grade asmpersongrade ${user.asmpersongrade}
BES user email besuseremail ${user.besuseremail}
Company company ${user.company}
Company name companyname ${user.companyname}
Country c ${user.c}
Department department ${user.department}
Description description ${user.description}
Disabled user disableduser ${user.disableduser}
Display name displayname ${user.displayname}
Distinguished name distinguishedname ${user.distinguishedname}
Domain name domainname ${user.domainname}
Email mail ${user.mail}
First name givenname ${user.givenname}
Home address homestreetaddress ${user.homestreetaddress}
Home city homecity ${user.homecity}
Home country homecountry ${user.homecountry}
Home fax homefax ${user.homefax}
Home phone homephone ${user.homephone}
Home state/region homestate ${user.homestate}
Home zip or post code homezip ${user.homezip}
IP phone ipphone ${user.ipphone}
Middle initial middleinitial ${user.middleinitial}
Middle name middlename ${user.middlename}
Mobile mobile ${user.mobile}
Name cn ${user.cn}
Office address physicaldeliveryofficename ${user.physicaldeliveryofficename}
Office city l ${user.l}
Office fax number facsimiletelephonenumber ${user.facsimiletelephonenumber}
Office state/province st ${user.st}
Office street address officestreetaddress ${user.officestreetaddress}
Office telephone number telephonenumber ${user.telephonenumber}
Office zip or post code postalcode ${user.postalcode}
P.O. box postofficebox ${user.postofficebox}
Pager pager ${user.pager}
Primary group ID primarygroupid ${user.primarygroupid}
SAM account samaccountname ${user.samaccountname}
Street address streetaddress ${user.streetaddress}
Surname sn ${user.sn}
Title title ${user.title}
User logon name userprincipalname ${user.userprincipalname}