Addressing Devices

To help target specific devices or users for a notification, we have Tags, Named Users, Tag Groups, and Attributes.


Tags allow you to attribute arbitrary metadata to a specific device. Common examples include favorites such as sports teams or news story categories.

Modifying tags

Named Users

Named Users allow you to associate multiple devices to a single user or profile that may be associated with more than one device, e.g., an end-user's Android phone and tablet. A device can have only one Named User, and a single Named User should not be associated with more than 50 devices. Named Users provide the ability to directly set tags on them (see Tag Groups).


Associating the channel with a Named User ID will implicitly disassociate the channel from the previously associated Named User ID, if an association existed.

By default, Named Users cannot be associated from the device. In this case if the devices attempts a Named User association, the association will fail and the SDK will log an error. To change this setting, go to Settings » APIs & Integrations » Named Users.

Setting the named user
// Associate the channel to a Named User ID.

Tag Groups

Tag groups are configurable namespaces for organizing tags for the channel and Named User. Please view the Tag Groups documentation for more details. The Create and push to a tag group guides you through creating and using Tag Groups.


If setting channel tags is enabled during registration, the predefined device Tag Group cannot be modified from the device and will log an error message. Disable channel tags by setting setChannelTagRegistrationEnabled to false on the PushManager instance if you want to modify this "default" Tag Group.

Channel Tag Group Example
                .addTag("loyalty", "bronze-member")
                .removeTag("loyalty", "bronze-member")
                .setTag("games", "bingo")
Named User Tag Group Example
                .addTag("loyalty", "bronze-member")
                .removeTag("loyalty", "bronze-member")
                .setTag("games", "bingo")

By default, Tag Groups cannot be modified from the device. In this case if a device attempts to modify Tag Groups, the modification will fail and the SDK will log an error. In order to change this setting, follow the steps in Manage Tag Groups.


Attributes are key-value pairs that can be associated with a user or device for the purposes of audience targeting. Attributes support more advanced segmentation than tags.

Attributes are currently a beta feature. If you wish to participate in the beta program, please complete our signup form.

Attributes Example
        .setAttribute("last_product_purchased", "A1234567")

Airship Channel IDs

The Channel ID is a unique identifier that ties together an application/device pair on Android and Amazon devices. The Channel ID is used to target pushes to specific devices using the Airship API. Once a Channel ID is created, it will persist the application until it is either reinstalled, or its internal data is cleared.

String channelId = UAirship.shared().getPushManager().getChannelId();"My Application Channel ID: " + channelId);

Don't worry if this value initially comes back as null on the app's first run (or after clearing the application data), as the Channel ID will be created and persisted during registration. To receive an event when the Channel ID is available, add a RegistrationListener on the PushManager instance.

Example RegistrationListener
    UAirship.shared().getPushManager().addRegistrationListener(new RegistrationListener() {
        public void onChannelCreated(@NonNull String channelId) {
            // created

        public void onChannelUpdated(@NonNull String channelId) {
            // updated - tags, tokens, opt-in status changed

        public void onPushTokenUpdated(@NonNull String token) {
            // FCM/ADM push token updated