Device

Device is an object representing a device. The Device object can be present on both Signals and Identities in some form. It is always optional.

It is somewhat difficult to establish uniqueness on modern devices, as normal applications do not have access to the real Device ID. One exception to this is enterprise managed devices, where an app has been granted permission to access the device data. Apps with carrier permissions can also access this data.

We can match on a number of types of device IDs with varying reliability.

Attributes

  • deviceId string A generic value representing a unique ID for a device.

  • installId string A generic value representing an app's install ID on a device.

  • identifierForVendor string iOS vendor-specific ID. Persistent across uninstall/reinstall.

  • androidId string The value of ANDROID_ID does not change on package uninstall or reinstall, as long as the signing key is the same.

  • imei string The IMEI number of the device.

In iOS under UIDevice, or in Android under android.os.Build, you can get the following information.

  • osName string The name of the device's operating system.

  • osVersion string The version of the device's operating system.

  • manufacturer string The device manufacturer.

  • model string The device model.

Also in iOS under UIDevice you can get the "name" field, i.e. "Jan's iPhone", if the app has been granted that entitlement.

  • name string iOS device name.

Approvable

When embedded into an Identity, this object is extended by the Approvable fields.

Last updated