IdentifiersWrapper
The Kepler Identifiers API provides utilities for managing various identifiers and device-related metadata in the context of an app and user persona. It includes functionality for generating, retrieving, and managing unique identifiers such as UUIDs, user agent strings, and friendly device names.
Constructors
new IdentifiersWrapper()
new IdentifiersWrapper():
IdentifiersWrapper
Returns
Methods
addAdvertisingIdListener()
static
addAdvertisingIdListener(listener
):Promise
<ISubscription
>
Note: Currently, this method is not supported.
Adds a listener for changes to the advertising identifier.
Parameters
listener
The listener to be notified when the advertising identifier changes.
Returns
Promise
<ISubscription
>
ISubscription An ISubscription object that you can use to unsubscribe from the event.
addFriendlyDeviceNameListener()
static
addFriendlyDeviceNameListener(listener
):Promise
<ISubscription
>
Note: Currently, this method is not supported.
Adds a listener for changes to the friendly device name.
Parameters
listener
The listener to be notified when the friendly device name changes.
Returns
Promise
<ISubscription
>
ISubscription An ISubscription object that you can use to unsubscribe from the event.
addVendorTrackingIdListener()
static
addVendorTrackingIdListener(listener
):Promise
<ISubscription
>
Note: Currently, this method is not supported.
Adds a listener for changes to the tracking identifier.
Parameters
listener
The listener to be notified when the tracking identifier changes.
Returns
Promise
<ISubscription
>
ISubscription An ISubscription object that you can use to unsubscribe from the event.
disableAdvertisingId()
static
disableAdvertisingId():Promise
<void
>
Note: Currently, this method is not supported.
Disables advertising identifier support for a given user. For every call it will check if it is already disabled. If not then it proceeds, else it ignores the request. This API requires the privilege: com.amazon.kepler.identifiers.privilege.advertising-id.modify
Returns
Promise
<void
>
disableVendorTrackingId()
static
disableVendorTrackingId():Promise
<void
>
Note: Currently, this method is not supported.
Disables tracking identifier support for a given user for specific vendor. If the tracking identifier is already disabled, the request is ignored. This API requires the privilege: com.amazon.kepler.identifiers.privilege.tracking-id.modify
Returns
Promise
<void
>
enableAdvertisingId()
static
enableAdvertisingId():Promise
<void
>
Note: Currently, this method is not supported.
Enables advertising identifier support for a specified user while opting-in. Will generate new Uuid for advertising identifier if not set previously. For every call it will check if it is already enabled. If not then it proceeds, else it ignores the request. This API requires the privilege: com.amazon.kepler.identifiers.privilege.advertising-id.modify
Returns
Promise
<void
>
enableVendorTrackingId()
static
enableVendorTrackingId():Promise
<void
>
Note: Currently, this method is not supported.
Enables tracking identifier support for a given user for specific vendor, if it was previously opted-out. For every call it will check if it is already enabled. If not then it proceeds, else it ignores the request. This API requires the privilege: com.amazon.kepler.identifiers.privilege.tracking-id.modify
Returns
Promise
<void
>
generateUuidV4()
static
generateUuidV4():Uuid
Generates a new random UUID (version 4 algorithm) for custom identifiers.
Returns
UUID A new UUID.
getAdvertisingId()
static
getAdvertisingId():Promise
<Uuid
>
Note: Currently, this method is not supported.
Gets the advertising identifier for the current persona.
The advertising identifier is used for cross-app tracking and is resettable by the user.
This identifier is available only with user opt-in.
If the user has not opted in, the value returned is 0000-0000-0000-0000
.
Returns
Promise
<Uuid
>
An advertising identifier UUID.
getFriendlyDeviceName()
static
getFriendlyDeviceName():Promise
<string
>
Gets the friendly name of the device for the current persona. This name is shared across applications and can be modified by the user.
Returns one of:
- The user-customized device name if it exists and the caller has the "com.amazon.devconf.privilege.identifiers.device-friendly-name" run-time privilege
- The device model name if either:
- No user-customized name has been set
- The caller lacks the required privilege
Returns
Promise
<string
>
The friendly name of this device - either the user-customized name (if set and privileged) or the device model name.
getUserAgent()
static
getUserAgent():Promise
<string
>
Gets the user agent string that is used to identify devices.
This is profile dependent information which contains device model, OS version, etc.
Example: "Amazon-TV /1.0 (
Returns
Promise
<string
>
getVendorTrackingId()
static
getVendorTrackingId():Promise
<Uuid
>
Gets the tracking identifier UUID for the vendor signing the callers application. The tracking identifier is resettable by the user and allows for tracking across all applications from a single vendor. This identifier is available only with user opt-in. Users are opted-in by default. However, they can chose to opt-out. If the user has opted-out, the function returns a null UUID (0000-0000-0000-0000).
Returns
Promise
<Uuid
>
UUID A tracking identifier UUID.
resetAdvertisingId()
static
resetAdvertisingId():Promise
<void
>
Note: Currently, this method is not supported.
Resets the advertising identifier. This API requires the privilege: com.amazon.kepler.identifiers.privilege.advertising-id.modify
Returns
Promise
<void
>
resetVendorTrackingId()
static
resetVendorTrackingId():Promise
<void
>
Note: Currently, this method is not supported.
Resets the tracking identifier to a new Uuid. This API requires the privilege: com.amazon.kepler.identifiers.privilege.tracking-id.modify
Returns
Promise
<void
>
setFriendlyDeviceName()
static
setFriendlyDeviceName(name
):Promise
<void
>
Sets a new friendly name for the current persona.
Parameters
name
string
The new friendly name for the device. The device-friendly name accepts UTF-8 characters. Valid input is a minimum of 2 and maximum of 60 bytes of UTF-8 encoding. This API is access-controlled, and requires the privilege: com.amazon.devconf.privilege.identifiers.device-friendly-name.write.
Returns
Promise
<void
>
Last updated: Sep 30, 2025