LogoLogo
Developers
  • Welcome
  • Introduction
  • Getting Started
    • Overview
    • What can we do?
    • Features & Packages
    • SDKs
  • SERVICES
    • Introduction about services
    • Identity
      • Brand
        • Examples
        • How to identify a brand
        • What default values when a brand is created?
        • How to be a reseller
        • Multiple Brand Management
      • User *
        • User Type
        • Username
        • User Status
        • Username vs. Login Name
        • Password
          • User-defined options
          • Built-in policies
        • Authentication Methods
          • Traditional Login
          • External Login
          • Login with Email link
        • Referral (Invite Friends)
          • Example
        • Password Policy
        • Login with Google
      • Device
        • Type
        • Device Identifier (Device Code)
        • Device Registering
        • Access Limit
    • Subscription
      • What is Package?
      • Package (Pricing Plan)
      • Plans & Pricing *
        • Licensing *
        • Subscription Type *
        • Feature
          • Examples
        • Package
        • Price *
        • Coupon
        • License
          • License Status
          • License Delivery Type
          • License Source
        • Pseudo Flow *
          • Licensing Flow *
          • Pricing Flow *
          • Coupon Application Flow *
    • Billing
      • Payment
        • Payment Status
        • Commission
        • Instant Payment Notification (IPN) *
          • Payment Gateway
          • Supported Gateways
        • Payment Transaction Overview
      • Transaction *
      • Invoice *
    • Wallet
      • Wallet *
        • Secure Practices *
        • ✔️Pseudo Flow *
      • Redeem *
    • Security
      • Black List
      • Risk Levels
    • Community
      • Issue
        • Examples
        • Pseudo Flow
      • Organization
    • Content Delivery Network (CDN)
      • CDN
        • CDN Storage
        • Uploading files to a CDN
        • Downloading files from a CDN
        • Are There Any Limitations?
        • Best Practices
    • Analytics
      • Tracking
        • Tracking Activity
        • Tracking Email
        • Tracking Notification
      • Log & Debug
      • Notification
    • Integration
      • Authentication
      • Payment Gateways
      • Push Notification
      • SMS Provider
      • SMTP Provider
      • Gitbook
    • Brand Settings (Branding)
      • What are Permissions and Roles?
        • System permissions & brand-based permissions
          • A (6 resources)
          • B (7 resources)
          • C (4 resources)
          • D (3 resources)
          • E (2 resources)
          • F (1 resource)
          • I (3 resources)
          • L (1 resource)
          • O (1 organization)
          • P (4 resources)
          • R (1 resource)
          • S (2 resources)
          • T (4 resources)
          • U (7 resources)
          • W (1 resource)
        • System Roles & Brand-based Roles
        • Granting Permissions
        • Assigning Roles
        • Best Practices
        • Pseudo Flow
        • Conclusion
      • What is Issue Category
      • What is Feature?
      • What is Subscription Type?
      • What is Subscription?
      • What is Commission Rate?
      • Events & Patterns
        • Event
          • Events for Community (Organization) (4)
          • Events for Device (3)
          • Events for License (2)
          • Events for Payment (8)
          • Events for System (9)
          • Events for Ticket (Issue) (6)
          • Events for User (47)
            • User.Account_ (5)
            • User.Coupon_ (1)
            • User.Email_ (5)
            • User.Expiration_ (3)
            • User.Inactive_ (2)
            • User.Invoice_ (1)
            • User.License_ (1)
            • User.Logged_ (3)
            • User.Password_ (3)
            • User.Phone_ (2)
            • User.Profile_ (2)
            • User.Receipt_ (1)
            • User.Referee_ (1)
            • User.Registered (2)
            • User.Reward_ (3)
            • User.Service_ (1)
            • User.SMS_ (1)
            • User.Status_ (5)
            • User.Suspicious_ (4)
            • User.Ticket_ (1)
          • Events for Wallet (4)
          • (Missing Events) *
        • WalletEarningEvent
          • Earning.User_ (8)
          • Earning.Wallet_ (2)
        • Email Templates *
        • SMS Templates *
      • Tags
      • Domains
      • Email templates
    • System Constants (Read-only)
      • Country
      • State
      • City
      • Time Zone
      • Currency
      • Language
      • Exchange Rate
  • Other concepts
    • Built-in resource
      • Built-in roles
        • Best practice
      • Built-in permissions
    • JFW Status
    • Default data
    • System data
    • Soft deletion data
    • Cryptography
    • Mailing
      • Examples
      • Email Sender
      • Email Template
    • Scheduler
      • Examples
      • Schedulers Used In JFW
    • Tracking Level
  • Versioning
  • Workflows
  • References
    • Internal references
    • External references
      • MailKit
      • MIME Type
  • Changelog
Powered by GitBook
LogoLogo

For developers

  • Developers

For users

  • Admin & cPanel

Examples

  • BoostPTE

Copyright @2018-2025

On this page

Was this helpful?

  1. SERVICES
  2. Identity
  3. Device

Device Identifier (Device Code)

Last updated 2 months ago

Was this helpful?

Definition

A Device Identifier (device ID) is a unique alphanumeric string assigned to a device by the manufacturer. This identifier serves as a way to uniquely identify a specific piece of hardware. Examples include the IMEI for mobile phones, the MAC address for network interfaces, and serial numbers for various devices. Device Identifiers are critical in various applications including device authentication, tracking, and inventory management.

To prevent confusion with the ID (identity) column in the database table (SQL Server), refer to "Device Identifier" or "Device Code" instead of "Device ID".

Adopting a uniform method to assign unique identifiers to devices, such as IMEI or ICCID, optimizes application functionality and security. This approach:

  • Enhances user experience by personalizing interactions.

  • Increases security by uniquely identifying each device.

  • Improves device management and clarity within databases.

End-devs have the flexibility to select the most fitting identifier, ensuring their application meets user needs and adheres to security standards. This strategic implementation of "Device Identifiers" allows for precise tracking and management of each device interaction within an application, streamlining operational efficiency and user satisfaction.

For the best experience and compatibility on iOS devices, it is advisable to use one of the following identifiers:

  • IMEI (International Mobile Equipment Identity)

  • ICCID (Integrated Circuit Card Identifier)

  • MEID (Mobile Equipment Identifier)

Finding Device Identifier on iOS

To locate your device's IMEI, ICCID, or MEID, follow these simple steps:

  1. Open Settings and tap on General.

  2. Select About.

  3. Scroll until you find the Serial Number, IMEI/MEID, or ICCID.

Example IMEI: 357265095594931

For the best experience and compatibility on Android devices, it is advisable to use one of the identifiers:

  • IMEI: This unique identifier for GSM, WCDMA, and iDEN mobile phones can be used for a more hardware-focused identification method. However, due to privacy and security concerns, access to IMEI has been restricted in recent Android versions.

  • Android ID: A unique 64-bit number generated on the device's first boot. This ID remains constant for the lifetime of the device's factory settings but may change when the device is factory reset.

  • Serial Number: Provides a hardware-based identifier for the device. The accessibility of the serial number varies by device and Android version.

Finding Device Identifier on Android

To locate your device's IMEI, ICCID, or MEID, follow these simple steps:

  1. Open the Settings app and scroll down to, then tap on About Phone or About Device depending on your device. Some devices may have this under System > About phone.

  2. Tap on Status or Status Information.

  3. Here, you can find your device's IMEI number, ICCID, and MEID. You may need to tap on IMEI information or a similar option, depending on your device model.

Example IMEI: 490154203237518

Starting in Android 10, apps must have the READ_PRIVILEGED_PHONE_STATE privileged permission to access the device's non-resettable identifiers, which include both IMEI and serial numbers. Caution: Third-party apps installed from the Google Play Store cannot declare privileged permissions. It's better to not use IMEI/MEID to track Android devices if you want to support Android 10+.

Several pieces of information can be combined to create a unique identifier for a browser. These include:

  • User-Agent String: This provides detailed information about the browser version, operating system, and device.

  • IP Address: Though not strictly browser-specific, an IP address can be part of a unique identifier, especially when combined with other data.

  • Browser Fingerprinting: This technique collects data points like screen resolution, time zone, installed plugins, and fonts. When combined, these can create a highly unique profile of a browser.

  • Cookies and Local Storage: Websites can generate a unique ID and store it on the user's device using cookies or local storage, ensuring the identifier is sent with each request to the site.

  • Canvas Fingerprinting: By asking the browser to draw a hidden graphic, websites can exploit small differences in the way each device renders the image, contributing to a unique fingerprint.

Example: For a user accessing our app with the Microsoft Edge browser version 112 on Windows 11, the generated Device Identifier would be:

This identifier offers us a way to track and optimize our application performance across various devices and browsers efficiently.

For further information:

7a4e8bb8c512686b434f66624e78992df354e25e88e4d21e2383848cbbdcd11b (we use to generate this string)

https://developer.android.com/training/articles/user-data-ids
creepjs
An "About" screen on an iOS device.