Attributes & Custom Attributes


Attributes in SimpleMDM can be used in many powerful ways. Attributes enable you to create configurations that are customized on a per-device basis. With attributes, you can create profiles and managed app configurations that include values specific to the device they are being installed to. Additionally, you can use custom attributes as a way to store device or asset metadata specific to your business.

SimpleMDM supports many device attributes out of the box, including but not limited to:

  • name
  • model
  • phone number
  • serial number
  • UDID

A current listing of supported attributes is available within the SimpleMDM app. Aspects of SimpleMDM that support attributes will include an "attribute support" label. In addition, managed app configurations support attributes.


To illustrate the power of attributes, imagine the following requirement: You have a fleet of iPads at your business and you need an easy way to determine which iPad is which. Instead of using a label maker to designate each device, you would like the lock screen to display the device name and serial number.

SimpleMDM allows you to designate a lock screen message on a per device-group basis. Since you would like the lock screen message on each device to be different, you will want to employ attributes. Attributes are enclosed with double brackets. Here is an example of a lock screen message with attributes:

Asset Name: {{device_name}}. Serial Number: {{serial_number}}.

SimpleMDM will substitute the attribute placeholders above with the correct values for each device.

Custom Attributes

The custom attributes feature allows you to create your own attributes for use in your account. These attributes can have default values and be assigned unique values on a per-group and per-device basis.?

Since a single custom attribute can have a default value, a group-level value, and a device-level value, it's important to understand of the priority each is given. The priority is as follows:

  1. Device-level value
  2. Group-level value
  3. Default value

If a device-level value is assigned, this value will be used. If not, the group-level value will be used. If this is also unassigned or blank, the default value will be used. If none of these values are available, the custom attribute will be set blank.

If a configuration references a custom attribute that does not exist, the custom attribute markup (for instance "{{my_custom_attribute}}" will be left untouched.


To illustrate the usefulness of custom attributes, consider the following scenario: You would like to push an email configuration to a group of devices. You would like to auto-populate a unique email address for each device, but do not want to create a separate account configuration in SimpleMDM for each device. Custom attributes can be used to make this job easier.

First, create a new custom attribute named "email_address". Setting a default value doesn't make much sense, so leave this field blank.

Next, assign values for the "email_address" custom attribute for your devices. These values can be set through the device details page for each device or by using the SimpleMDM API. This requires some effort, but is easier than creating a new account for each device. The "email_address" value will also be reusable, so you can use it for future configurations and inventory purposes.

Finally, create an email account profile. For the email address and username field, insert "{{email_address}}". Save the profile and assign it to your group of devices. Each device will receive a customized email configuration.

Where To Edit Custom Attributes

Custom attribute keys can be managed from Configs > Attributes. Default values are also set here.

Device Group-level values are set from the device group details page. Select the "Settings" tab to find a custom attributes section.

Device-level values are set from the device details page. Select the "Settings" tab to find a custom attributes section.

Was this article helpful?
Still have a question or want to share what you have learned? Visit our Community Discord to get help and collaborate with others.